【Linux学习】零基础学习Linux

简介: 【Linux学习】零基础学习Linux

如果没有躺赢的命,那就要站起来奔跑。

前言:

从今天开始我们还将学习linux的相关知识,本节我将带领大家先认识Linux的一些基本概念,让不熟悉的小伙伴有个大概的了解!!!


1.认识Linux

在认识linux之前,我们需要先了解UNIX的一些知识,由于包含的内容太多,在这里我就直接给大家引用了:

链接:Unix发展史

Linux发展历史

1991年10月5日,赫尔辛基大学的一名研究生Linus Benedict Torvalds在一个Usenet新闻组(comp.os.minix)中宣布他编制出了一种类似UNIX的小操作系统,叫Linux。新的操作系统是受到另一个UNIX的小操作系统——Minix的启发,该系统是由一名叫Andrew S Tanenbaum的教师开发的。读者也许猜想所发布的这个系统应该是Linux的0.01版本,实际上不是这样。真正的Linux 0.01版本并没有被发布,原因是0.01版本不实用。Linus仅仅在第一个Linux的FTP站(ftp://nic.funet.fi)上提供过这个版本的的源代码。

2.Torvalds于10月5日发布的这个Linux版本被称为0.02版,它能够运行GNU Bourne Again Shell(bash)和GNU的C编译程序(gcc)以及为数不多的其它语言。Torvalds绝对没有想到他设想的一种能够针对高级业余爱好者和黑客们的操作系统已经产生,这就是人们所称的Linux。

3.Linux发布时的版本是0.02,后来又有0.03版,然后又跳到0.10版。因为世界各地越来越多的程序员都开始开发Linux,它已经达到0.95版。这就意味着正是公布1.0版本的时间已经为期不远了。正式的1.0版本是在1994年公布的

2.为什么要学习linux

1.因为作为日后的程序员来说,掌握Linux的运用是我们必须学会的一项技能,无论你未来是否从事Linux相关工作,只要你是个程序员,我觉得就必须要学习Linux,因为你从事开发工作的话,就一定是要参与项目的,当你的项目开发完后,大多数情况都会部署在Linux系统上。

2.其次,技术之间都是融会贯通的,你学了Linux,再去学习其他的技术的时候就会触类旁通,更加容易学,就像你去学C语言一样,你把C语言学好了,再去学习其他的编程语言的时候就不会那么有压力了,所以我还是建议大家一定要学好Linux!!!

3.Linux和Windows的区别

在这里我们有必要浅谈一下两者的区别,以便于大家更好的进行认识:

1.第一种很明显的区别就是Linux是一款开源的操作系统,它就兼具了安全性,稳定性和高效率的优点,数据的安全性相比Windows来说更加的安全可靠,而且Linux几乎是不收费的;

2.Linux具有很高的安全性,因为它易于识别错误并进行修复,而Windows具有庞大的用户群,并成为病毒和恶意软件开发人员的目标;

3.Linux有权访问源代码并根据用户需要更改代码,而Windows则无权访问源代码。即使在现代桌面环境和操作系统功能下,Linux的运行速度也比Windows最新版本快,而在较旧的硬件上,Windows运行速度较慢。

详细的对比我们参照以下:Linux和Windows的主要区别

4.发行版本

Debian

Debian运行起来极其稳定,这使得它非常适合用于服务器。

debian这款操作系统无疑并不适合新手用户,而是适合系统管理员和高级用户。

Ubuntu

Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。Ubuntu侧重于它在这个市场的应用,在服务器、云计算、甚至一些运行Ubuntu

Linux的移动设备上很常见。Ubuntu是新手用户肯定爱不释手的一款操作系统。

红帽企业级Linux

这是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构,包括x86和x86_64。红帽公司通过课程红帽认证系统管理员/红帽认证工程师(RHCSA/RHCE),对系统管理员进行培训和认证。

CentOS

CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。这款重构版完全去掉了注册商标以及Binary程序包方面一个非常细微的变化。有些人不想支付一大笔钱,又能领略红帽企业级Linux;对他们来说,CentOS值得一试。此外,CentOS的外观和行为似乎与母发行版红帽企业级Linux如出一辙。

CentOS使用YUM来管理软件包。

Fedora

小巧的Fedora适合那些人:想尝试最先进的技术,等不及程序的稳定版出来。其实,Fedora就是红帽公司的一个测试平台;产品在成为企业级发行版之前,在该平台上进行开发和测试。Fedora是一款非常好的发行版,有庞大的用户论坛,软件库中还有为数不少的软件包。

Kali Linux

Kali

Linux是Debian的一款衍生版。Kali旨在用于渗透测试。Kali的前身是Backtrack。用于Debian的所有Binary软件包都可以安装到Kali

Linux上,而Kali的魅力或威力就来自于此。此外,支持Debian的用户论坛为Kali加分不少。Kali随带许多的渗透测试工具,无论是Wifi、数据库还是其他任何工具,都设计成立马

可以使用。Kali使用APT来管理软件包。

毫无疑问,Kali Linux是一款渗透测试工具,或者是文明黑客(我不想谈论恶意黑客)青睐的操作系统。

具体可以阅读:Linux版本

5.搭建 Linux 环境

Linux 环境的搭建方式

主要有三种

  1. 直接安装在物理机上. 但是由于 Linux 桌面使用起来非常不友好, 不推荐.
  2. 使用虚拟机软件, 将 Linux 搭建在虚拟机上. 但是由于当前的虚拟机软件(如 VMWare 之类的)存在一些 bug , 会导致环境上出现各种莫名其妙的问题, 比较折腾.
  3. 使用云服务器, 可以直接在 腾讯云, 阿里云或华为云 等服务器厂商处直接购买一个云服务器.(使用云服务器不仅环境搭建简单, 避免折腾, 同时还有一个最大的好处, 部署在云服务器上的项目可以直接被外网访问到, 这个时候就和一个公司发布一个正式的网站没有任何区别. 也就能让我们自己写的程序真的去给别人去使用)

对于要学习linux的小伙伴,以上几种方式大家根据自己的实际情况来进行选择。

6.使用 XShell 远程登陆到 Linux

当我们有了环境之后,我们可以在自己安装的环境上直接进行操作,但是我使用的是xshell软件,这是一款终端模拟软件,这是一款商业软件,做的比较好用,推荐大家使用!!!

6.1下载安装 XShell

XShell 是一个远程终端软件. 下载官网

https://www.xshell.com/zh/xshell/

下载安装的时候选择 “home/school” 则为免费版本.

6.2查看 Linux 主机 ip

我这里使用的是购买的云服务器,只需打开云服务器,在进去的主页面往下滑即可找到对应的IP地址。

6.3使用 XShell 登陆主机

步奏:

1.打开下载安装好的xshell软件,在左上方点击文件,在弹出来的框中选择新建:

2.紧接着出现如下图标。主机即为需要连接的Linux服务器的ip地址。端口号为22(无须修改,但需要确认远程服务器的22端口已经打开)

3.点击左边的“用户身份验证”,输入用户名和密码。点击确认后,即可连接。

4.在 XShell 终端下敲

ssh [ip]

ip 为刚才看到的 ifconfig 结果.

如果网络畅通, 将会提示输入用户名密码. 输入即可正确登陆

备注: 这里的用户名密码都是在最初购买服务器的时候设置的用户名密码

6.4XShell 下的复制粘贴

复制: ctrl + insert (有些同学的 insert 需要配合 fn 来按)

粘贴: shift + insert

注意:

ctrl + c / ctrl + v 是不行的

7.Linux为什么不使用图形界面?

举个例子,同样的命令在命令行模式下输多少次都是同样的结果,图形界面就不一定是这样,它受到许多的外界干扰,你能保证每次点击都是事先计划好的地方么?一个像素都不差吗,万一操作过程中手一滑或者电脑卡了等原因造成不是点的同一个位置,那么这时问题就出现了。

因此相比图形界面,Linux命令行才是Linux系统的真正核心,利用命令行可以对系统进行各种配置,要熟练并成功管理Linux操作系统就必须对Linux命令行有深入的了解。Linux下的命令行有助于初学者了解系统的运行情况和计算机的各种设备。

总结:以上就是对于linux的一些基本的介绍,通过以上内容大家或多或少对Linux都有了基本的认识,紧接着下期我们就正式走进对其的学习!!!

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
3月前
|
NoSQL 关系型数据库 MySQL
Linux学习记录---(1、基本命令)
该博客文章提供了Linux系统中基本命令的使用记录,包括文件和目录操作、Redis服务管理、MySQL数据库操作以及Tomcat服务器的启动和检查。
Linux学习记录---(1、基本命令)
|
20天前
|
存储 安全 Linux
|
22天前
|
Linux Shell 数据安全/隐私保护
|
4月前
|
Ubuntu Linux vr&ar
IM跨平台技术学习(十二):万字长文详解QQ Linux端实时音视频背后的跨平台实践
本文详细记录了新版QQ音视频通话在 Linux 平台适配开发过程中的技术方案与实现细节,希望能帮助大家理解在 Linux 平台从 0 到 1 实现音视频通话能力的过程。
172 2
|
1月前
|
Linux 编译器 C语言
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
【Linux快速入门(一)】Linux与ROS学习之编译基础(gcc编译)
|
1月前
|
网络协议 Linux
linux学习之套接字通信
Linux中的套接字通信是网络编程的核心,允许多个进程通过网络交换数据。套接字提供跨网络通信能力,涵盖本地进程间通信及远程通信。主要基于TCP和UDP两种模型:TCP面向连接且可靠,适用于文件传输等高可靠性需求;UDP无连接且速度快,适合实时音视频通信等低延迟场景。通过创建、绑定、监听及读写操作,可以在Linux环境下轻松实现这两种通信模型。
39 1
|
1月前
|
Linux 开发工具
【Linux快速入门(二)】Linux与ROS学习之编译基础(make编译)
【Linux快速入门(二)】Linux与ROS学习之编译基础(make编译)
|
3月前
|
NoSQL Ubuntu Linux
Linux内核学习
Linux内核学习
80 3
|
2月前
|
Linux
使用qemu来学习Linux的休眠和唤醒
使用qemu来学习Linux的休眠和唤醒
|
2月前
|
Linux
linux内核原子操作学习
linux内核原子操作学习
下一篇
无影云桌面