1.Linux
操作系统(Operation System, OS),是管理计算机硬件与软件资源的计算机程序,同时也是计算机系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。
主流操作系统按照应用领域的划分
1、桌面操作系统
-
Window 系列
-
用户群体大
-
-
macOS
-
细节处理的更好, 没有windows软件丰富, 价格高
-
-
Linux
-
应用软件少
-
2、服务器操作系统
-
Linux
-
安全、稳定、免费
-
占有率高
-
-
Windows Server
-
付费
-
占有率低
-
1.3.1 什么是 Linux
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux 的标志和吉祥物是一只名字叫做Tux(它克斯)的企鹅,Linux是基于Unix的。
Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机
1.3.2 Linux的特点
基本思想
Linux的基本思想有两点:
第一:一切都是文件
第二:每个软件都有确定的用途
其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近
完全免费
Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大。
完全兼容POSIX1.0标准
这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑。
多用户、多任务
Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。
良好的界面
Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的X-Window系统,用户可以使用鼠标对其进行操作。在X-Window环境中就和在Windows中相似,可以说是一个Linux版的Windows。
支持多种平台
Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持Intel64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。
优点
1)Linux由众多微内核组成,其源代码完全开源;
2)Linux继承了Unix的特性,具有非常强大的网络功能,其支持所有的因特网协议,包括TCP/IPv4、 TCP/IPv6和链路层拓扑程序等,且可以利用Unix的网络特性开发出新的协议栈;
3)Linux系统工具链完整,简单操作就可以配置出合适的开发环境,可以简化开发过程,减少开发中仿真工具的障碍,使系统具有较强的移植性;
1.4 Linux和Unix区别
1、开源情况
Unix 是商业化的,而 Linux 是开源的,是免费、公开源代码的。
2、硬件适用
Unix 系统大多是与硬件配套的,也就是说,大多数Unix系统如AIX、HP-UX等是无法安装在 x86 服务器和个人计算机上的,而 Linux则可以运行在多种硬件平台上。
可以先学习Linux后再学习Unix,因为Linux可以方便的在虚拟机上运行,防止新手的误操作。
3、本质不同
Linux是开放源代码的自由软件,用户对前者有很高的自主权,在实际的的开发是处在一个完全开放的环境之中;
而Unix是对源代码实行知识产权保护的传统商业软件,用户的开发完全是处在一个黑箱之中,只有相关的开发人员才能够接触的产品的原型;
Unix 诞生于 20 世纪 60 年代末,Windows 诞生于 20 世纪 80 年代中期,Linux 诞生于 20 世纪 90 年代初,可以说 Unix是操作系统中的"老大哥",后来的 Windows 和 Linux 都参考了 Unix
1.5 Linux和Windows区别
目前国内 Linux 更多的是应用于服务器上,而桌面操作系统更多使用的是 Windows。主要区别如下
比较 | Windows | Linux |
---|---|---|
界面 | 界面统一,外壳程序固定所有 Windows 程序菜单几乎一致,快捷键也几乎相同 | 图形界面风格依发布版不同而不同,可能互不兼容。GNU/Linux 的终端机是从 Unix传承下来,基本命令和操作方法也几乎一致。 |
驱动程序 | 驱动程序丰富,版本更新频繁。默认安装程序里面一般包含有该版本发布时流行的硬件驱动程序,之后所出的新硬件驱动依赖于硬件厂商提供。对于一些老硬件,如果没有了原配的驱动有时很难支持。另外,有时硬件厂商未提供所需版本的 Windows 下的驱动,也会比较头痛。 | 由志愿者开发,由 Linux 核心开发小组发布,很多硬件厂商基于版权考虑并未提供驱动程序,尽管多数无需手动安装,但是涉及安装则相对复杂,使得新用户面对驱动程序问题(是否存在和安装方法)会一筹莫展。但是在开源开发模式下,许多老硬件尽管在Windows下很难支持的也容易找到驱动。HP、Intel、AMD 等硬件厂商逐步不同程度支持开源驱动,问题正在得到缓解。 |
使用 | 使用比较简单,容易入门。图形化界面对没有计算机背景知识的用户使用十分有利。 | 图形界面使用简单,容易入门。文字界面,需要学习才能掌握。 |
学习 | 系统构造复杂、变化频繁,且知识、技能淘汰快,深入学习困难。 | 系统构造简单、稳定,且知识、技能传承性好,深入学习相对容易。 |
软件 | 每一种特定功能可能都需要商业软件的支持,需要购买相应的授权。 | 大部分软件都可以自由获取,同样功能的软件选择较少。 |
Windows与Linux在其他方面的不同
开放性
所谓的开放性就是Linux 操作系统是开放源码系统,可以对其程序进行编辑修改。而微软的Windows 系统是受微软版权保护,就是只能微软内部进行开发及修改。
文件格式不同
Windows 操作系统内核是NT,而Linux 是 shell;
另外,windows 硬盘文件格式是fat32或NTFS,而Linux 需要的文件格式是ext2或ext3,该操作系统还多一个SWAP格式的交换分区
免费与收费
在中国,对个人用户Windows 和Linux 都是免费的,对公用户Windows 需要收费,Linux 是免费的。
技术支持
Windows 较普及。Linux 需要深度的Linux 版块支持。
安全性
Linux 相对Windows 来说安全性更高。
开源
开源就是指对外部开放软件源代码。Linux 开源,而Windows并不开源。
使用习惯
Windows 放弃了dos的字符模式,主攻图形界面,让桌面系统更易用。Linux 字符模式运行的更好,图形界面还只是附带品,可有可无。
软件与支持
Windows 下可以运行绝大部分软件、玩99.999%的游戏、硬件厂商近乎100%的支持。Linux 下可直接运行的软件数量和win下比起来就是1和99的区别,而且目前选择Linux 的人基本不会考虑玩游戏,同时Linux 正期待更多硬件厂商的支持
首先前提是你得有一个服务器。
主机是你的本机地址,如果你想要连接别人的服务器的话输入他的本机地址,本机地址在怎么查,使用win+R,在控制台输入ipconfig这就是查询你的本机地址。左上角有一个用户身份验证,账号和密码就是服务器的账号和密码。
2.2 Linux 用户和用户组管理
2.2.1 Linux账号管理
1) 添加用户
我们在Windows创建账号主要是是控制面板--用户账户--创建一个新账户,这是在Windows创建账户的流程,而在Linux中,我们可以通过命令的方式进行创建账户
使用者权限:管理员用户 root
useradd 选项 用户名
参数说明:
-
选项:
-
-c comment 指定一段注释性描述。
-
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-
-g 用户组 指定用户所属的用户组。
-
-G 用户组,用户组 指定用户所属的附加组。
-
-s Shell文件 指定用户的登录Shell。
-
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
-
-
用户名:
指定新账号的用户名(后续我们可以使用这个用户名进行系统登录)。
添加用户xinzhi执行
useadd xinzhi
我们使用useradd命令创建了一个用户czbk
useradd 可用来建立用户帐号。帐号建好之后,再用 passwd 设定帐号的密码。
执行如下
以下是useradd常用选项
2) 用户口令
引子: 相当于我们在Windows系统中给个用户更改密码,只是我们在CentOS中是更改密码是通过命令完成的。
用户管理的一项重要内容是用户口令的管理。用户账号刚创建时没有口令,但是被系统锁定,无法使用,必须为其指定口令后才可以使用
使用者权限:管理员用户
指定和修改用户口令的Shell命令是passwd
。超级用户可以为自己和其他用户指定口令,普通用户只能用它修改自己的口令。命令的格式为:
passwd 选项 用户名
可使用的选项:
-
-l 锁定口令,即禁用账号。
-
-u 口令解锁。
-
-d 使账号无口令。
-
-f 强迫用户下次登录时修改口令。
设置当前用户的口令
passwd xinzhi
此处我们设置密码 xinzhi666 (注意密码必须高于8位,不能简单的都是数字,不然报错)
3) 修改用户
相当于我们在Windows系统中修改一个用户,只是我们在CentOS中是修改用户是通过命令完成的。
usermod 命令通过修改系统帐户文件来修改用户账户信息
修改用户账号就是根据实际情况更改用户的有关属性,如用户号、主目录、用户组、登录Shell等。
使用者权限:管理员用户
修改已有用户的信息使用usermod
命令,其格式如下:
usermod 选项 用户名
下面命令将用户xinzhi用户名修改成xinzhibigdata
usermod -l xinzhibigdata xinzhi
以下是usermod常用选项
4) 删除用户
相当于我们在Windows系统中删除一个用户,只是我们在CentOS中是删除用户是通过命令完成的。
假如我们其中一个用户的账号不再使用,可以从系统中删除。删除用户账号就是要将/etc/passwd等系统文件中的该用户记录删除,必要时还删除用户的主目录。
使用者权限:管理员用户
删除一个已有的用户账号使用userdel
命令,其格式如下:
userdel 选项 用户名
-f:强制删除用户,即使用户当前已登录;
-r:删除用户的同时,删除与用户相关的所有文件
此命令删除用户xinzhibigdata (建议加上-rf)
userdel xinzhibigdata
成功删除用户 xinzhibigdata
以下是userdel常用选项
2.2.2 Linux用户组
引子:
为了方便用户管理, 提出了 组 的概念, 如下图所示
新增一个账户,它默认属于自己(账户)的组
比如新建账户【张三】,那么它默认对应的组就是张三
一个用户可以有一个或者多个组
假如说(如上图),我们在企业级开发过程中,我们有多个组,其中一个开发组对应三个账户,张三、李四、王五、如果就像上面提到的,一个用户默认对应一个组,那么三个账户张三、李四、王五就有了三个不同的组,如果大家都操做一个文件,在进行权限分配的时候,就要对不同的三个组进行授权,显然这样是不合理的,因为太过繁琐。
所以,才有了组(新建组)的概念,我们把张三、李四、王五统一放到【开发组】,在对文件授权的时候,我们只对【开发组】进行授权由此,这样的话【张三、李四、王五】都有相等的权利操作了。
1) 增加用户组
新增一个用户组(组名可见名知意,符合规范即可),然后将用户添加到组中
使用者权限:管理员用户
groupadd 选项 用户组
使用的选项有:
-
-g GID 指定新用户组的组标识号(GID)。
-
-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同
新增用户组xinzhi9
groupadd xinzhi9
上面的命令向系统中增加了一个新组xinzhi9,新组的组标识号是在当前已有的最大组标识号的基础上加1
以下是groupadd常用选项
2) 修改用户组
使用者权限:管理员用户
groupmod 选项 用户组
常用的选项有:
-
-g GID 为用户组指定新的组标识号。
-
-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。
-
-n新用户组 将用户组的名字改为新名字
groupmod -n xinzhi8 xinzhi9
上面的命令将组xinzhi9的组名修改为xinzhi8
以下是groupmod常用选项
3) 查询用户所属组
在查询用户所属的用户组前,我们先增加一个用户han,新建一个组 xinzhi9
useradd han groupadd xinzhi9
要查询一个用户属于哪个用户组,使用groups命令,其格式如下
groups 用户名
查询用户han属于某个用户组,执行groups命令
groups han
由此可见,han用户属于用户组han(用户组默认与用户名一样)
4) 删除用户组
使用者权限:管理员用户
要删除一个已有的用户组,使用groupdel命令,其格式如下
groupdel 用户组
删除xinzhi8用户组,注意不能删除han的用户组
groupdel xinzhi8
删除成功
以下是groupdel常用选项
加油欧!兄弟们,只有学习才会进步!