任务五             管理Linux系统的用户组

【任务说明】
Linux操作系统是多用户多任务操作系统。
用户可分为普通用户和超级用户,除了用户以外还有用户组。所谓用户组就是用户的集合,CentOS组中有两种类型,私有组和标准组。当创建一个新用户时,若没有指定他所
属的组,CcntOS就建立一个和该用户相同的私有组,此私有组中只包括用户自己。标准组可以容纳多个用户,如果要使用标准组,那创建一个新的用户时就应该指定他所属于
的组。另外,同一个用户可属于多个组,例如某个单位的领导组和技术组,lik是该单位的技术主管,所以他就属于领导组和技术组。当一个用户属于多个组时,其登录后所属的组是主组,其他组为附加组。
Linux 环境下的用户与用户组系统文件主要存放在etc/passwd、/etc/shadow 、/etc/group和/etc/gshadow这4个文件中。其基本含义后面会详细介绍,root1~499是系统一标准
账户,普通用户的UID是从500开始。
初次接触Linux 的朋友大概会觉得很奇怪,Linux有这么多用户,还要分用户组(又叫做“群组”),有什么用呢? 其实,文件所属的用户与用户组功能是一个相当健全的安全防
护。由于Linux是多人多工的操作系统,因此常常会有多人同时使用过部主机工作,为了考虑每个人的隐私权,因此,“文件所有者”的角色就显得相当重要。例如,当我们将某个
文件放在自己的工作目录下,并且不希望这个文件的内容被别人看到,这时就应该把文件设定成“只有文件拥有者,也即我们自身才能查看和修改该文件的内容”,由于我们设定
了这样的权限,因此其他用户即使知道有这个文件存在,也无法看到该文件的内容。
那么为什么要为文件设定它所属的用户组呢?其实,用户组最简单的功能之一,就是用于团队开发资源。举例来说,假设主机有两个团体:第一个团体为testgroup ,它的成
员是test1、test2、test3共3个;第二个闭体名称为treatgroup ,它的成员为trea1、treat2、treat3。这两个团体之间是互相有竞争性质的,要比赛看谁做的那份报告最好,然而每组
成员又需要同时能够修改自己的团体内任何人所建立的文件,且不能让非本团体的人看到这些文件内容。这时候就要通过用户组的权限进行设置,禁止非本用户组的用户查看本
组的文件。同时,
如果成员自己还有私人隐秘的文件,还可以设定文件权限,使本团队其他成员也看不到此文件的内容。另外,如果有一个teacher用户是testgroup 与treatgroup 这两个用户
组的老师,想要同时观察两个组的进度,就要设定teacher用户同时支持testgroup 与treatgroup 这两个用户组,这样就可以查看这两个用户组的文件。也就是说,每个用户还可以
属于多个用户组。
基于以上考虑,Linux系统中的每个用户都至少属于一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux系统对用户组的规定有所不同,如Linux下
的用户就默认属于与它同名的用户组,这个用户组在创建用户的时候同时创建。
本任务的主要目的是要向由灵活地管理用户以及用户组。
【任务实施】
第一步:查看Linux系统中的用户

系统中所有的用户存放文件为/etc/passwd,可通过【vim /etc/passwd】命令打开查看。

(1)用户名:它唯一地标识了一个用户账号,用户在登录时使用的就是它。
(2)加密口令: Passwd文件中存放的密码是经过加密处理的。Linux 的加密算法很严密,其中的口令几乎是不可能被破解的。盗用账号的人一般都借助专门的黑客程序,构造出
无数个密码,然后使用同样的加密算法将其加密,再和本字段进行比较,如果相同的话,就代表构造出的口令是正确的。因此,建议不要使用生日、常用单词等作为口令,它们
在黑客程序面前几乎是不堪一击的。特别是对那些直接连人较大网络的系统来说,系统安全性显得尤为重要。
(3)用户ID:用户识别码,简称UID。Linux系统内部使用UID来标识用户,而不是用户名。tilD是一个整数,用户的UID互不相同。普通用户的UID默认是从500开始的。
(4)组ID:用户组识别码,简称GID。不同的用户可以属于同一个用户组,享有该用户组共有的权限. UID类似,GID唯一地标识了一个用户组。普通用户的GID默认是从500开始
的。UID与GID默认情况下是一致的。
(5)用户描述:这是给用户账号做的注解。它一般是用户真实姓名、电话号码、住址等,当然也可以悬空的。
(6)家目录:这个目录属于该账号,当用户登录后,它就会被置于此目录中,就像回到家一样。一般来说,root账号的家目录是/root,其他账号的家目录都在/home目录下,并且和
用户名同名。
⑺登录shell:用户登陆后执行的命令。一般来说这个命令将启动一个shell 程序。
例如,用bbs 账号登录后、会直接进入bbs系统,这是因为bbs账号的login command指向的是bbs 程序,等系统登录到bbs时就自动运行这些命令。
备注:UID 是用户识别码,GID 是用户组识别码。如果把普通用户的UID和GID改成与root 用户的一样,那么此用户就变成了管理员,拥有管理员的权限。
第2步:查看用户密码以及有效期的文件
用户密码以及有效期的存放文件/etc/shadow可通过【vim /etc/shadow】命令打开
查看。

例如,用bbs 账号登录后、会直接进入bbs系统,这是因为bbs账号的login command指向的是bbs 程序,等系统登录到bbs时就自动运行这些命令。
备注:UID 是用户识别码,GID 是用户组识别码。如果把普通用户的UID和GID改成与root 用户的一样,那么此用户就变成了管理员,拥有管理员的权限。
(1)用户名:灶与/etc /passwd文件中的登录名相一致的用户账号。
⑵加密口令:存放的是加密后的用户口令字符,长度为13个字符。如果为空,则对应用户没有口令,能够登录但是不需要口令;如果是两个感叹号,则表示该用户没有设置密码、
不能登录进系统;如果含有不属于集合{./0-9A-Za-z}中的字符,则对应的用户不能登录。
⑶最后一次修改时间:表示从某个时刻起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。例如,在SCOLinux 中,这个时间起点足1970年1月1日。
(4)最小时间间隔:指两次修改口令之间所需的最小天数。
(5)最大时间间隔:指口令保持有效的最大天数。
(6)警告时间:表示从系统开始警告用户到用户密码正式失效之间的天数。
(7)不活动时间:表示用户没有登录活动但账号仍能保持有效的最大天数。
(8)失效时间:给出的是一个绝对的天数。如果使用了这个字段,那么就给出相应账号的生存期。期满后,该账号就不再是一个合法的账号,也不能再用来登录。
系统中还有一些默认的账号,如daemon、bin 等。这些账号有特殊的用途,一般用于系统管理。这些账号的口令大部分用(*)号表示,代表它们不能在登录时使用。
【vim /etc/shadow】编辑用户密码的存放文件。把user2所在行的第一个冒号与第二个营 号之间的字符删除掉,设置user2的密码为空。
第3步:查看账号所属组文件
/etc/group 文件是用户组的配置文件,内容包括用户和用户组,并且能显示出用户是归属哪个用户组或哪几个用户组,因为一个用户可以归属一个或多个不同的用户组;同一用户
组的用户之间具有相似的特征。例如,我们把某一用户加入到root用户组,那么这个用户就可以测览rooe用户家目录的文件;如果root用户把某个文件的读写执行权限开放,root用
户组的所有用户都可以修改此文件,如果是可执行的文件(例如脚本),root用户组的用户也是可以执行的。
Linux中每建立一个用户时,同时也建立一个同名的组,此用户默认是加入到此组中。组用户文件存放在/etc/group 里面,可以通过【vim /etc/group 】命令查看,如图所示。

在图所示的文件中,有4列,每一列对应的释义如下。
第一列:用户组名称
第二列:用户组密码;
第三列: GID,即组ID
第四列:用户列表,每个用户之间用逗号(,)分割;本字段可以为空,如果为空表示用户组为GID的用户名。
第4步:查看用户组密码文件
/etc /gshadow 是/etc /group 的加密资讯文件,例如用户组(Group )管理密码就存放在这个文件中。/etc /group 是互补的两个文件;
对于大型服务器,针对很多用户和组,定制一些关系结构比较复杂的权限模型,设置用户组密码是极有必要的。例如,我们不想让一些非用户组成员永久拥有用户组的权限和特
性,这时可以通过密码验证的方式来让某些用户临时拥有一些用户组特性,这时就要用到用户组密码。

通过【vim /etc/gshadow】命令可以查看用户组密码存放文件,每个用户组独占一行,如图所示。

在图所示的文件中,有4列,每一列对应的释义如下。
第一列:用户组名称;
第二列:用户组密码,这个段可以是空的或有叹号(!),如果是空的或有叹号(!),表示没有密码;
第三列:用户组管理者,这个字段也可为空,如果有多个用户组管理者,用“,”号分割;
第四列:组成员,如果有多个成员,用逗号(,)分割。
第5步:建立与删除用户 
CentOS中,建立与删除用户的主要命令以及释义如下。
【useradd yhy】新建yhy用户。
【passwd yhy】为yhy用户设置密码,密码输入时无任何显示。
【useradd ybs-d /home/y】新建ybs用户,并指定家目录为/home/y。
【useradd user1-d / home/userl】此处可以不加-d 参数,因为用户的默认家目录就在/home下与用户名相同的目录下。
【useradd user2】增加新用户user2,用户默认家目录为/ home/user2。
【userdel yhy】删除用户,但不删除家目录。
【userdel-r ybs】删除ybs用户,并删除用户家目录。
【usermod-I user2 user1】修改用户user1名称为user2。
【usermod-L user2】锁定用户名user2,锁定后user2不能登录。
【usermod-U user2】解锁用户名user2。
【su-user1】root用户切换到普通用户,不需要密码。
【su-roof】普通用户切换到root用户,需要root密码。
备注:【su】命令后加“-”横杆,切换用户时切换到用户的家目录,否则,不改变当前路径。

第6步:建立与管理用户组
CentOS中,建立与管理用户组的主要命令以及释义如下。
【groupadd grp 1】新建用户组grp1
【grouPdei grp1】删除用户组grp1
【groupmod grp2 grp1】修改用户组名称grp1为grp2。
【gpasswd-a user2 grp2】把用户user2加人到用户组grp2中
【gpasswd-d user2 grp2】把用户user2从用户组grp2中删除。

第7步:几个重要的命令补充

有关用户的操作还有以下命令,详细释义如下。

[who am i 】显示当前以哪个用户登录。

【w】显示目前登人系统的用户详细信息,包括登录IP地址等。

【who】显示目前登入系统的用户简要信息。
【last】记录每个用户的登录次数和持续时间等信息。
【finger】查找并显示用户信息如【finger zhangs】表示查看zhangs用户信息。
【su user]切换用户但不切换当前目录。
【su - userl】切换用户并切换到user的家目录。
【ntsysv】启动/关闭系统中的服务。
【setup】设置系统运行参数。

任务六:管理linux系统的文件权限

第一步:认识文件权限说明

执行【ls -l】或【ls -al】或【ll】命令后显示的结果如图所示:

第一个字符一般用来区分文件和目录, d表示是一个目录,事实上在ext2fs中,目录是一个特殊的文件。-表示这是一个普通的文件。l 表示这是一个符号链接文件,实际上它指向
另一个文件。b、c分别表示区块设备和其他的外围设备,是特殊类型的文件。s、p这些文件关系到系统的数据结构和管道,通常很少见到。
第2~10个字符是用来表示一般权限,每3个为一组,左边3个字符表示所有者权限,中间3个字符表示与所有者同一组的用户的权限,右边3个字符是其他用户的权限。这3个一组
共9个字符。
每个用户都拥有自己的专属目录,即家目录,通常集中放置在/home目录下,这些专属目录的默认权限为rwx------,表示目录所有者本身具有所有权限,其他用户无法进入该目
录。执行【mkdir】命令所创建的目录,其默认权限为rwxr-xr-x,用户可以根据需要修改目录的权限。
文件和目录的权限表示,是用了、w、x这3个字符来代表所有者、用户组和其他用户的权限。 有时,字符似乎过于麻烦,因此还有另外一种方法是以数字来表示权限,而且仅需
3个数我们把r、w 、×分别用数值4、2、1来表示,权限数字之和即可代表对应的权限,具体如下。
r:对应数值4;
w:对应数值2;
x:对应数值1;
-:对应数值0。
r 、w、x合起来就是4十2十1=7,一个rwxrwxrwx权限全开放的文件,数值表示为777而完全不开放权限的文件”---------”,其数值表示为000。下面以表为例说明字符所对应的数字
权限关系。
第二步:使用【chmod】命令改变文件或目录的访问权限
在文本模式下,可执行【chmod】命令改变文件和目录的权限。
【chmod 777 123. txt 】把123. txt文件的权限设置为777。
【chmod 777 /home/user】仅把/home/user目录的权限设置为rwxrwxrw 。
【chmod -R 777 /home/ e/user】将整个/home/user目录与其中的文件和子目录的权限都设置为rwxrwxrwx。
【chrmod u=rwx,g=rx,o=rx 123. txt】把123. txt文件设置为755的权限。
这里的u=rwx代表user(文件的拥有者)的权限等于rwx,g=rx代表group (所属组)的权限等于rx,o=rx代表other(其他人)的权限等于rx。

第三步:更改文件的所有者以及所属组
文件与目录的权限可以改变,使用【chown】命令还可以改变其所有者及所属用户组。
先使用【touch 123. txt】命令创建一个文件后再执行【ls -l 】或【II】命令查看文件的情况如图所示。
从图可以看到,123. txt文件的所有者为root,所属用户组为root
执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示

从图可以看到,123. txt文件的所有者为root,所属用户组为root
执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示
【chown yhy 123. txt】把123. txt文件的拥有者改为yhy用户。
【ls- l】查看文件的详细信息。
要改变所属组,可使用【chown:yhy 123. txt】命令把123. txt文件的所属组改为yhy,然后使用【ls-I】命令查看文件的详细信息,如图所示。

从图可以看到,123. txt文件的所有者为root,所属用户组为root
执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示
要修改目录的权限,使用-R参数就可以了,方法和前面一样。
除了可以通过【chown】命令改变文件的拥有者以及所属组外,还可以通过【chgrp 】命令改变文件的所属组。
【chgrp yangs /etc/123. txt】修改/etc/a. txt 属组为yangs.
【chmod yhy. zck a. txt】或【chmod yhy:zck a. txt 】把a. txt文件的拥有者改为yhy,所属组改为zck 。
当然,前提条件是yhy用户以及zck用户组存在于系统中。然后可以用【ls-l 】命令查看一下执行后的结果。
从图可以看到,123. txt文件的所有者为root,所属用户组为root
执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示
第四步:认识umask
当我们登录系统之后创建一个文件总是有一个默认权限,那么这个权限是怎么来的?这就是umask的功能。umask设置了用户创建文件的默认权限,它与chmod的效果刚好相
反,umask设置的是权限“补码”,而chmod设置的是文件权限码。一般可在/etc/profile、/etc/bashrc、$ [HoME]/. bash_profile、$ [HO ME]/. profile或$[HoME]/. bashrc中设
置umask值。具体取决于Linux发行版本。
默认的权限可用【umask】命令修改,用法非常简单,只需执行【umask 777】命令,便代表屏蔽所有的权限,因而之后建立的文件或目录,其权限都变成000,依此类推,如图
所示。

从图可以看到,123. txt文件的所有者为root,所属用户组为root
执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示
如图所示,当执行【umask 777】命令后,再建立的文件夹的权限默认为000。
通常/root账号搭配【umask】命令的数值为022、027和077,普通用户则是采用002,这样所产生的权限依次为755、750、700和775。用户登录系统时,用户环境就会自动执行

【umask 】命令来决定文件、目录的默认权限。

从图可以看到,123. txt文件的所有者为root,所属用户组为root
执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示
第五步:识别特殊权限
Linux引人suid、sgid、sticky这3种特殊权限,能够更加方便、有效和安全地控制文件。当在一个目录或文件上加入suid特殊权限时,如果原来目录或文件的属主具有x(执行)权
限,就会用小写的s来替代xi如果原来文件或目录不具有x(执行)权限,就会用大写的S来代替x。
同样,sgid、sticky和suid 相同,如果原来目录或文件的属组具有x(执行)权限,就会用小写的s来替代x 如果原来文件或目录不具有x(执行)权限,就会用大写的S 来代替x。
如果在一个文件或目录上加人sticky权限时,若原文件或目录的其他用户有x(可执行)权限时,就用小写t代替x;如果原文件或目录没有x权限时,就用大写T替代x权限。
可以chmod的字符或数字的方式修改特殊权限,下例以数字方式实现,如图所示。

从图可以看到,123. txt文件的所有者为root,所属用户组为root
执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示

第六步:识别文件颜色

执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示
我们可以看出。在Linux中,文件的颜色都是有含义的。其中.Linux中文件名颜色不同,代表文件类型不一样。具体如下所示。
浅蓝色:表示链接文件;
灰色:表示其他文件;
绿色:表示可执行文件;
红色:表示压缩文件;
蓝色:表示目录:
红色闪烁:表示链接的文件有问题了;
黄色:表示设备文件,包括block、char、fifo。

用【dircotors-p】命令可以看到默认的颜色设置,包括各种颜色和“粗体”。下画线,闪烁等的定义。

从图可以看到,123. txt文件的所有者为root,所属用户组为root
执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示

第七步:总结常用的几个命令【chmod u+x,g-x,o=x test】所有者加上执行权组成员减少执行权限,其他成员设置为执行权限。

【chmod -R 766 . /】修改当前目录权限,要求里面的所有文件和文件夹的权限修改为766.

【chown user1:G3 zip.zip】修改zip.zip的所有者为user1,所有组为G3。

【umask】查看当前umask参数。

【touch /home/dir1】在/home目录下创建新目录dir1。

【ll /home/dir1】显示目录dir1的详细信息,记录目录的权限信息。

【umask 066】改变umask参数为066。

【chmod g+w /home/dir1】为dir的同组用户增加写权限。

【chmod 755 /home/dir1】改变file1的文件权限为755。

任务七:管理rpm软件包与安装包

从图可以看到,123. txt文件的所有者为root,所属用户组为root
执行下面命令,把123. txt文件的所有权转移到用户yhy,如图所示

rpm有5种操作模式,分别是:安装、卸载、升级、查询和验证。
第一步:查询rpm软件是否已经安装
     在安装一个软件之前,往往需要确认该软件是否已经安装。通过【rpm -q软件包名】命令查询或在参数-q后面直接加其他的参数来查询软件包的安装信息,具体命令及释义如下:
【rpm -qa | grep tomcat4】查询已经安装的tomcat4的所有套件
【rpm -qip example.rpm】查询安装包example.rpm的信息
【rpm -qif /bin/df】查询/bin/df文件所在安装包信息

【rpm -qlf /bin/df】查询/bin/df文件所在安装包中的各个文件分别被安装到哪个目录下

第二步:安装rpm软件包
     rpm软件包的安装可以使用程序rpm来实现。安装rpm软件时,当前工作目录下必须有该软件包存在,否则必须跟软件包的绝对路径。通过【rpm -i软件包名】命令或在参数-i后面直接加其他的参数来安装软件包,具体命令及释义如下:
【rpm -i example.rpm】安装example.rpm包
【rpm -iv example.rpm】安装example.rpm包并在安装过程中显示正在安装的文件信息
【rpm -ivh example.rpm】安装example.rpm包并在安装过程中显示正在安装的文件信息及安装进度

备注:-i表示安装包指定的软件包,-v显示安装包详细信息,-h显示安装进程

第三步:升级rpm软件包

当一个软件包已经安装,需要对其进行升级操作,采用【rpm -U软件包】命令,可对其进行升级操作。具体命令及释义如下:
【rpm -U example.rpm】升级example.rpm软件包

【rpm -Uvh example.rpm】加参数v显示升级时详细信息,加参数h显示安装进程

第四步:卸载rpm软件包
使用【rpm -e软件包名】命令卸载已经安装好的软件包
【rpm -e tomcat4】卸载tomcat4软件包
【rpm -e proftpd-1.2.8-1】
【rpm -e proftpd-1.2.8】
【rpm -e proftpd-】

【rpm -e proftpd】

第五步:熟悉rpm的其他附加命令

在实际软件安装、卸载、升级、等操作中,可能还存在软件的依赖等一系列问题,再加上上面步骤中的参数的同时,还可以加如下参数:
--force,强制操作,如强制安装删除等;
--requires,显示该包的依赖关系;
--nodeps,忽略依赖关系并继续操作。
【rpm -e --nodeps vsftpd】忽略依赖关系并继续删除vsftpd软件包
【rpm -i --nodeps vsftpd】忽略依赖关系并继续安装vsftpd软件包
【rpm -i --requires vsftpd】显示该包的依赖关系并安装vsftpd软件包

【rpm -i --force vsftpd】强制安装vsftpd软件包

第六步:认识rpm的命名规则

假设一个软件包的名称为:abc-1.3.20-16.i386.rpm,abc代表软件包的名称;1.3.20表示版本号;16表示发行次数;i386表示适用平台为inter x86,除了i386选项外常见的还有sparc(指sparc平台),alpha(指Alpha平台),src(指软件源代码)。

【子任务二】管理压缩软件包
在Linux系统世界中,除了rpm软件包,还有很多压缩软件包,所以在此子任务中,需要熟悉压缩软件包的管理等操作。
第1步:管理tar软件包
使用tar命令加各种参数来管理tar软件包,具体命令以及释义如下。
【tar cvf aa. tar aa. txt】建立一个tar包(把aa. txt压缩到文件aa. tar中)。
【tar xvf aa. tar】解压一个tar包。
【rar cvfz aa. tar. gz aa. txt】建立一个tar. gz包。
第3步:解压zip包
unzip为. zip压缩文件的解压缩程序。zip包的解压一般采用【unzip】命令。具体命令以及释义如下。
【unzip yhy. zip】将压缩文件yhy. ziP在当前目录下解压缩。
【unzip-n yhy. ziP-d /tmp】将压缩文件yhy. ziP在指定目录/tmp下解压缩,如果已有相同的文件存在,要求【unzip】命令不覆盖原先的文件。
【unzip-o test. zio-d tmp/】将压缩文件test. zip在指定目录tmp下解压缩,如果已有相同的文件存在,要求【unzip】命令覆盖原先的文件。
【unzip-v yhy. zip】查看压缩文件目录,但不解压。
【unzip a. zip】解压一个zip包。
第4步:gzip和gunziP等其他的压缩软件以及常用命令
Linux系统中还有其他的一些压缩工具以及命令,例如gz、fat. gz、bz2、tgz等,熟悉它们会让运维管理事半功倍。
(1) 【gzip-d a. gz 3. tar. gz】解压一个gz包。
(2)【tar xvzf abc tar. gz】解压一个tar. gz包。
(3)【gunzio abc tgz】解压一个tgz包。
(4) 【tar xvzf a. tar. z】解压一个tar. z包。
(5)【bunzip2 b. txt. bz2】解压一个bz2包。
(6) 【find / _name " *. zip”】将系统中所有的. zip文件名显示出来。
(7) 【find / _name " *.gz" |wc-I】查找系统中有多少个. gz文件,并统计数量。
(8)在家目录中创建如下内容,以便进行后面的命令操作。
【mkdir /home/dir1 dir2 dir3】在家目录中建立3个目录。
【touch /home/dir1/file1 /home/dir1/file2 /home/dir1/file3】分别在新建的目录中建立file1、file2 、file3文件。
(9)【ziP-q-r /root/ys1. ziP /root/*】将家目录下的所有文件(不包括目录)压缩成文件ys1. ziP。
(10) 【zip-m ys1. ziP install. log】将/root/install. log添加到ys1. zip中。
(11) 【unzip-v ys1. zip】显示ys1. ziP中包含的文件信息。
(12)【mkdir /tmP/unziP-ys1】建立unzip-ys1目录(此目录需要先建立)。
【unziP ys1. ziP-d /tmP/unziP-ys1/】将ys1. ziP解压至/tmP/unziP-ys1下。
(13) 【ziP-r /root/ys2. ziP /root/*】将家目录下的所有文件(包括目录)压缩成文件ys2. ziP。
(14)【mkdir /tmp/unzip-ys2】建立unziP-ys2目录(此目录需要先建立)。
【unzio ys2. zip-d /tmp/unzip-ys2】将ys2. ziP解压至/tmP/unziP-ys2目录下.
(15)将(8)中的文件file1、file2、file3分别压缩成. gz的形式。
【tar-czvf file1. tar. gz dir1/file1】将dir1/file1文件压缩成filel. tar. gz。
【tar-czvf fileZ. tar. gz dir1/file2】将dirl/file2文件压缩成file2. tar. gz。
【tar-czvf file3. tar. gz dir1/file3】将dir1/file3文件压缩成file3. tar. gz.
(16)将(15)中形成的. 9z压缩文件复制到/tmP/gunziP目录并解压。
【mkdir /t'mP/gunziP】互让立gunxiP目录。
【cp dir1/file1. gz dir1/file2. gz dir1/file3. gz /tmp/gullzip】望制压缩文件到新建的目录中。
【gzip-dov/tmo/gunziP/*】压缩gunzip目录下的所有文件

任务八  YUM源的配置与软件的YUM安装

【任务说明】
YUM(Yellow dog UPdater Modified)是一个在下fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于rpm包管理,能够从指定的服务器自动下载rPm包并且安装,可以
自动处理依赖性关系,并且一次安装所有依赖的软件包,无须烦琐地一次次下载、安装。
YUM的关键之处是要有可靠的repository,也就是软件的仓库,它可以是httP或ftp站点,也可以是本地软件池,但必须包含rPm的header,header包括了rpm包的各种信息,包括描
述、功能、提供的文件、依赖性等。正是收集了这些header并加以分析,才能自动化地完成余下的任务。
本任务的主要目的是配置本地以及网络YUM源并进行软件的自动安装
【任务实施】
为了简化此任务的学习,我们通过下面2个子任务的学习来达到我们的目的
【子任务一】配置本地YUM源;
【子任务二】配置冈内网络YUM源。
【子任务一】配置本地YUM源
在CentOS系统的安装光盘中,存放了许多我们常用的软件包,使用起来非常方便,在没有外网的环境中,我们只需搭建好本地的YUM源,即可进行大部分软件的安装。
第1步:查看系统默认安装的YUM
安装centos操作系统是基本都会默认安装YuM,不须另外安装,输入命令,查询
即可。
【rpm-qa yum】查看安装的YUM主程序。
【rpm-qa |grep yum】直升安装的YUM相关程序。
第二步:挂载系统安装光盘
把光盘放人光驱,然后使用【mount /dev/cdrom /mnt/】命令把光盘挂在/mnt这个常用的挂载点下。挂载成功后会在/mnt目录下看到光盘中的文件。
第3步:备份默认YUM配置文件
在修改配置文件之前,先备份要修改的文件,养成好的工程习惯。
【cd /etc/yum. repos. d/】进人YUM配置的目录下。
【Is】会看到CentOS系统默认的4个以repo为扩展名的配置文件。
【mkdir /etc/yum. repos. d/bak】建立备份文件夹。
【mv /etc/yum. repos. d/Cent.*/etc/yum. repos. d//bak/】备份原来的配置文件,移动原有的配置文件到备份文件夹中。(注, CentOS-Base. repo是YUM网络源的配置文件,
CentOS-Media. tePo是YUM本地源的配置文件),如图所示。
在修改配置文件之前,先备份要修改的文件,养成好的工程习惯。
【cd /etc/yum. repos. d/】进人YUM配置的目录下。
【Is】会看到CentOS系统默认的4个以repo为扩展名的配置文件。
【mkdir /etc/yum. repos. d/bak】建立备份文件夹。
【mv /etc/yum. repos. d/Cent.*/etc/yum. repos. d//bak/】备份原来的配置文件,移动原有的配置文件到备份文件夹中。(注, CentOS-Base. repo是YUM网络源的配置文件,
CentOS-Media. tePo是YUM本地源的配置文件),如图所示。
备注:新建的文件必须以. repo为扩展名,local可以自己取名。local. repo具体内容如下。
然后按Esc键,后输入【:wq】保存退出。最后使用【gum list】命令更新YUM配置即可查看到配置好的YUM源。
备注:baseurl=file:///mnt/ YUM源地址,光盘的挂栽点,需要注意的是file后面有3个斜杠,前两个斜杠表示地址格式,后面一个斜杠表示根目录。
第5步:总结repo文件的格式
所有repository服务器设置都应该遵循如下格式。
[serverid]
name= some name for this swrver
baseurl = ur1://path/to/repository/,
serverid是用于区别各个不同的repository,必须有一个独一无二的名称,name是对repository的描述,支持像$ releasever、$ basearch这样的变量; baseurl是服务器设置中级重
要的部分,只有设置正确,才能从上面获取软件。它的格式是:
baseurl = url://server1/path/repository。       
ur1://server2/path/repository/
ur1://server3/path/repository/
其中,ur1支持的协议有htt://、erp://、file,//3种。baseurl后可以跟多个ur1,用户可以自己改为速度比较快的镜像站,但baseurl只能有一个,也就是说不能像如下格式:
baseurl=ur1://server1/path/repository/
baseurl=ur1://server2/path/repository/
baseurl = ur1://server3/path/repository/
其中,ur1指向的目录必须是这个repository header目录的上一级,它也支持$releasever、$ basearch这样的变量。
ur1之后可以加上多个选项,如gpgcheck、exclude、failovermethod等。
第6步:使用YUM源安装软件
【yum】命令搭配参数install表示安装指定的软件,详细使用方法以及释义如下。
【yum install-y dialogJ通过YUM源安装dialog软件。
【yum install yum-fastestmirror】自动搜索最快镜像插件。
【yum install yumex】安装YUM图形窗口插件。
【yum localinstall-y dialog】安装本地的rpm软件位dialog。
备注: 在上面的命令中,-y选项表示对所有的提问都回答“yes";如果不加-y选项,安
装过程会要求用户手动确认安装过程中的问题。除了-y选项,还有其他的选项可以使用,它们的具体释义如下。
-h:显示帮助信息;
-y:对所有的提问都回答“yes”;
-c:指定配置文件;
-q:安静模式;
-v:详细模式;
-d:设置调试等级(0~10).;
-e:设置错误等级(0~10);
-R:设置YUM处理一个命令的最大等待时间;
-C:完全从缓片中运行,而不去下载或者更新任何头文件。
第7步:使用YUM更新软件
【yum】命令搭配参数update表示更新指定的软件,详细使用方法以及释义如下。
【yum update-y dialog】更新dialog软件包。
【yum check-update-y dialog】检查是否有可用的更新dialog软件包。
【yum localupdate-y dialog】如果有dialog的新版本,而且也下载到本地,就可以这样本地更新
【yum update】全部更新YUM源。
第8步:使用YUM卸载软件
【yum】命令搭配参数remove表示卸载或删除指定的软件,详细使用方法以及释义如下。
【yum remove-y dialog】卸载dialog软件包。
【yum remove |erase package1】删除程序包Package1。
第9步:【YUM】命令的其他选项
【YUM】命令搭配其他参数的详细使用方法以及释义如下。
【gum list dialog】显示dialog软件包的信息。
【yum search dialog】检查dialog软件包的信息。
【yum info dialog】显示指定的dialog软件包的描述信息和概要信息。
【yum clean】清理YUM过期的缓存。
【yum shell】进入YUM的shell提示符。
【yum resolvedeP dialog】显示dialog软件包的依赖关系。
【yum deplist dialog】显示dialog软件包的所有依赖关系。
【yum clean packages】清除缓存目录下的软件包。
【yum clean headers】消除缓存目录下的headers。
【gum clean oldheaders】清除缓存目录下旧的headers。
第10步:查询已安装的dialog软件
通过YUM安装的软件,依然使用【rpm】命令来查询软件的安装情况。
【rpm-qa dialog】查询dialog软件安装信息。
【子任务二】配置国内网络YUM源
本地YUM源地址指向光盘。但光盘中的软件毕竟有限,系统默认的YUM源(红帽官方的YUM源)速度往往不尽如人意,为了达到快速安装的目的,有时还需要把YUM源指向国内
的地址。
第1步:配置上海交通大学YUM源
修改/etc/yum. repos. d/CentOS-Base. repo。为如下内容。
备注:在上面的配置中,YUM源地址后跟了很多参数,参数的具体释义如下。
$ releasever:代表发行版的版本,从[main]部分的distroverpkg获取,如果没有,则根据RedHat-release包进行判断。
$arch:CPU体系,如i686,athlon等
$basearch: CPU的基本体系组,如i686和athlon同属i386,alpha和alphaev6同属AlPha。
第2步:企业YUM源列表
搜狐开源镜像站: httP://mirrors. soho. com/,
网易开源镜像站: httP://mirrors. 163. com/,
第3步:大学教学YUM源列表
北京剧工大学:
http://mirror, bia, cdu, cn (IPv4 only).
http://mirror. bit6. cdv. cll (IPv6 only).
北京交通大学:
http://mirror. bjtu. cdu. cn (IPv4 only).
http ://mirror6. bjtu. edo. cn (IPv6 only)。
http://debian. bjtu. edo. cn (IPv4十IPv6)。
兰州大学: http://mirror. lzu. edo. cn/。
厦门大学: http://mirrors. xmu. edo. cn/。
清华大学:
http ://mirrors. tuna. tsinghua. edo. cn/ (IPv4十IPv6)。
http://mirrors. 6. tuna. tsinghua. edo. cn/ (IPv6 only),
http://mirrors. 4. tuna. tsinghua. edo. cn/ (IPv4 only),
天津大学: http://mirror. tiu. edo. cn/。
中国科学技术大学:
http://mirrors. ustc. edo. cn/ (IPv4十IPv6)。
http://mirrors4. ustc. edo. cn/,
http://mirrors6. ustc. edo. cn/,
东北大学:
http://mirror. neo. edo. cn/ (IPv4 only)。
http://mirror. neu6. edo. cn/ (IPv6 only)。
电子科技大学: http://ubuntu. uestc. edo. cn/。

管理与维护linux系统(任务五 六 七 八)相关推荐

  1. Linux服务器运维管理 项目二 管理与维护Linux系统

    任务一 安装与维护Linux系统 系统已安装,略.                任务二 认识Linux的文件系统 子任务一 熟悉Linux系统的目录结构 第一步:理解Linux系统目录的结构树 第二 ...

  2. 项目二 管理与维护Linux系统

    任务一   安装与配置初始CentOS系统 安装完成. 任务二  认识linux的文件系统 [子任务一] 熟悉linux系统中的目录结构 文件结构是文件存放在磁盘等存储设备上的的组织方法,目录提供了一 ...

  3. 项目二 管理与维护Linux系统

    任务一  安装与配置初始CentOS系统 Linux操作系统的安装方法主要有3种,其方法如下:      1.光盘安装     到市场上的软件连锁店直接购买Linux 光盘发行版,用光盘来安装是最方便 ...

  4. 项目二:管理与维护linux系统

    任务一:安装与配置初始centos系统. 第一步:选择启动方式: 第二步:跳过刚盘检测: 第三步选择安装的语言: 第四步:选择合适的键盘: 第五步:选择安装的储存设备: 第六步:储存设备警告信息处理: ...

  5. Linux系统编程(七)消息队列

    Linux系统编程(七)消息队列 一.什么是消息队列 二.消息队列内部原理 三.实现消息队列的收发 1.发送消息队列 2.接收消息队列 四.消息队列与命名管道的比较 一.什么是消息队列 消息队列提供了 ...

  6. 数字大小写转换:如何把“0123456789”转换成“零一二三四五六七八九”?

    蜗牛日记20200218 中国大学MOOChttp://www.icourse163.org <Python语言程序设计>(11期) 2020年02月18日 10:00 - 2020年05 ...

  7. 使用ConnectBot开源项目在android设备上管理你的linux系统

    最近,工作中有使用android通过ssh管理linux系统的需求,找到了这个ConnectBot这个开源项目https://github.com/connectbot/connectbot.http ...

  8. 浪潮服务器管理口地址linux系统,Linux-HikvisionOS系统安装手册-管理口安装[1].pdf

    Linux HikOS 系统安装和使用手册 管理口安装 1. 管理口配置 1.1).管理口连接配置 管理口位置: 1.1 重启按F2 或者delete 进入bios,选到server mgmt. 1. ...

  9. 项目二 管理和操作linux系统

    任务一  安装与配置初始CentOS系统    任务二  认识Linux的文件系统   子任务一 熟悉Linux系统中的目录结构  文件结构是文件存放在磁盘等存储设备上的组织方法,主要体现在对文件和目 ...

最新文章

  1. 最近发现的一些Python写程序的小技巧
  2. 2021年春季学期-信号与系统-第十四次作业参考答案
  3. 从gitee 下载代码到本地
  4. log4j的NDC/MDC区别与应用
  5. 深度学习笔记4:深度神经网络的正则化
  6. 到2025年将保持不变的热门流行技术
  7. mysql5.7解压版错误_mysql 5.7 解压版 安装net start mysql 发生系统错误 2
  8. LeetCode 9. 回文数
  9. 社交应用动态九宫格图片的规则
  10. 【数值分析】顺序高斯消去法和列主元高斯消去法的三个主要不同点
  11. SQLSERVER 创建ODBC 报错的解决办法 SQLState:‘01000‘的解决方案
  12. 如何查看Ubuntu的内核是AMD、ARM、x86、x86_64
  13. 《I'm a Mac:雄狮训练手册》——2.3 账户类型
  14. C语言实现flappy bird(可视化编程)
  15. 偏微分方程数值解的matlab程序,偏微分方程数值解法MATLAB源码
  16. The RSpec Book笔记《四》Describing Code with RSpec用RSpec描述代码
  17. iexplore.exe免费下载
  18. (附源码)Python音乐分类系统 毕业设计 250858
  19. 解决The kernel appears to have died. It will restart automatically问题
  20. 【Java】枚举类型

热门文章

  1. 发现好文!51单片机特殊功能寄存器 /I/O口操作 /中断/ 定时器/ 串口通信/ ---位寻址解释由来--以及程序例程
  2. P2P分布式搜索引擎YaCy
  3. 写首小诗表达我的孤独,独自一个人熬着那些只属于我一个人的夜
  4. 怎么提高截屏图片分辨率?照片分辨率低如何做成高清?
  5. java暗装没有快捷键_全网最全最硬最实用的idea 使用技巧与快捷键,开发必备的百分百快捷键...
  6. 巴曙松:寻找可持续的经济复苏
  7. 全面提升转化率和客单价的方法和技巧
  8. week10 day1 JavaScript
  9. 有关获取并保存微信头像到本地服务器
  10. MailConnectException: Couldn‘t connect to host