项目二 任务五到任务八以及拓展训练

【任务说明】

    Linux操作系统是多用户操作系统。

    用户可分为普通用户和超级用户,除了用户以外还有用户组。所谓用户组就是用户的集合,CoentOS组中有两种类型,私有组合标准组。当创建一个新用户时,若没有指定它所属的组,CentOS就建立一个和该用户相同的私有组,此私有组中包括用户自己。标准组可以容纳多个用户,如果要使用标准组,那创建一个新的用户时就应该指定他所属的组。另外,同一个用户可以属于多个组,例如某个单位的领导组和技术组,lik是该单位的技术主管,所以他就属于领导和技术组。当一个用户属于多个组时,其登录后所属的组是主组,其他组为附加组。 

   Linux环境下的用户与用户组系统文件主要存放在/etc/passwd、/etc/shadow、/etc/group和/etc/gshadow这4个文件中。其基本含义后面会详细介绍,root的UID是0,从1-499是系统的标准账户,普通用户的UID是从500开始。

   初次接触Linux的朋友大概会觉得很奇怪,Linux有这么多用户,还要分用户(又叫做“群组”),有什么用呢?其实,文件所属的用户与用户组功能是一个相当健全的安全防护。

   由于Linux是多人多工作的操作系统,因此常常会有多人同时使用这部主机工作,为了考虑每个人的隐私权,因此,“文件所有者”的角色就显得相当重要。例如,当我们将某个文件放在自己的工作目录下,并且不希望这个文件被别人看到,这个时候应该把文件设置成“只有文件拥有者,也即我们自身才能查看和修改该文件的内容”,由于我们设定了这样的权限,因此其他用户即使知道有这个文件的存在,也无法看到该文件的内容。

   那为什么要为文件设定它所属的用户组?其实,用户组最简单的功能之一,就是用于团队开发资源。举例来说,假设主机有两个团体,第一个为testgroup,它的成员是test 1、test 2、test 3共3个;第二个为treatgroup,它的成员为treat 1、treat 2、treat 3。这两个团体之间是互相有竞争性质的,要比赛看谁做的那份报告最好,然而每组成员有需要同时能够修改自己的团队内任何人所建立的文件,且不能让非本团体的人看到这些文件内容。这时候就要通过用户组的权限进行设置,禁止非本用户组的用户查看本组的文件。同时,如果成员自己还有隐私的文件,还可以设定文件权限,使本团队其他成员也看不到此文件的内容。另外,如果有一个teacher用户是testgroup与treatgroup这两个用户组的老师,想要同时观察两个组的进度,就要设定teacher用户同时支持testgroup与treatgroup这两个用户组,这样就可以查看和两个用户组的文件。也就是说,每个用户还可以属于多个用户组。

   基于以上考虑,Linux系统中的每一个用户至少属于一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux系统对用户组的规定不同,如Linux下的用户就默认属于与它同名的用户组,这个用户组在创建用户的时候同时创建。本人无的主要任务就是要自由灵活地管理用户以及用户组。 

【任务实施】

第1步:查看Linux系统中的用户 

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

   passwd文件由许多条记录组成,每条记录占一行,记录了一个用户账号的所有信息。每条记录与7个字段组成,字段间用冒号隔开,其格式如图 1-1 所示:

        

(1)用户名:它唯一地标识了一个用户账号,用户在登陆时使用的就是它。

(2)加密口令:passwd文件中存放的密码是经过加密处理的。Linux的加密算法很严密,其中口令是不可能被破解的。到用账号的人一般都借用专门的黑客程序,构造出无数个密码,人后使用同样的加密算法将其加密,在和本字段进行比较,如果同样的话,就代表构造出来的口令是正确的。因此,建议不要使用生日、常用单词等作为口令,他们在黑客程序面前几乎是不堪一击的。特别是对那些直接连入较大网络的系统来说,系统的安全性显得尤为重要。

(3)用户ID:用户识别码,简称UID。Linux系统内部使用UID来识别用户,而不是用户名。UID是一个整数,用户的UID互不相同。普通用户的UID默认是从500开始的。

(4)组ID:用户组识别码,简称GID。不同用户可以属于同一个用户组,享有该用户组共有的权限。与UUID类似,GID唯一地标识了一个用户组。普通用户的GID默认是从500开始的。UID与GID默认情况下是一致的。

(5)用户描述:这是给用户账号做的注解。他一般是用户的真实姓名、电话号码、住址等,当人也可以时空。

(6)家目录:这个目录属于该账号,当用户登录后,它就会被置于此目录中,就像回到家一样。一般来说,root账号的家目录是/root,其他账号的家目录都是在/home目录下,并且和用户名同名。

(7)登录shell:用户登录后执行命令。一般来说,这个命令将会启动一个shell程序。例如,用bbs账号登陆后,会直接进入bbs系统,这是因为bbs账号的logincommand指向的bbs程序,等系统登陆都bbs时就自动运行这些命令。

第2步:查看用户密码以及有效期的文件

   用户密码以及有效期的存放文件/etc/shadow可以通过【vim /etc/shadow】命令打开查看。

   shadow文件有许多条记录组成,,每条记录占一行,记录了一个用户账号的所有用户密码以及有效期等信息。每条记录与8个字段组成,字段间用冒号隔开,其格式如图 1-2 所示:


(1)用户名:是与/etc/passwd文件中的登录名相一致的用户账号。

(2)加密口令:存放的是加密后的用户口令字符,长度为13个字符。如果为空,则对应用户没有口令,能够登陆但不需要口令;如果是两个感叹号,则表示该用户没有设置密码,不能登陆进系统;如果含有不属于集合{./0-9A-Za-z}中的字符,则对应的用户并不能登录。

(3)最后一次修改时间:表示从某个时候起,到用户最后一次修改口令时的天数。时间起点对不同的系统可能不一样。例如:在SCOLLinux中,这个时间的起点是1970年1月1日。

(4)最小时间间隔:质量次修改口令之间所需的最小天数。

(5)最大时间间隔:指口令保持有效的最大天数。

(6)警告时间:表示从此同开始警告用户到用户密码正式失效之间的天数。

(7)不活动时间:表示用户没有登陆活动但账号仍能保持有效的最大天数。

(8)失效时间:给出的是一个绝对的天数。如果使用这个字段,那么就给出相应账号的生存期。期满后,给账号就不是一个合法的账号,也不能用来再次登录。

    系统中还有一些默认的账号,如daemon、bin等。这些账号有特殊的用途一般用于系统的管理。这些账号的口令大部分用(*)号表示,代表他们不能再登录时使用。

   【vim /etc/shadow】编辑用户密码的存放文件。把user2所在行的第一个冒号和第二个冒号之间的字符删除掉,设置user2的密码为空。

第3步:查看账号所属组文件

    /etc/group文件是用户组的配置文件,内容包括用户和用户组,并且能显示出用户是归属哪个用户组或哪几个用户组,因为一个用户可以属于一个或多个不同的用户组;同一用户组之间具有相似的特征。例如,我们把某一用户加入到root用户组,那么这个用户就可以浏览root用户家目录的文件,如果root用户把某个文件的读写执行权限开放,root用户组的所有用户都可以修改此文件,如果是可执行的文件(例如脚本),root用户组的用户也是可以执行的。

   Linux中没建立一个用户,同时也建立一个同名的组,此用户默认加入到词组中。组用户文件存放在/etc/group里面,可以通过【vim /etc/group】命令查看,如图 1-3 所示:

  

再上图所示的文件中,由4列,每一列对应的释义如下:

第一列:用户组名称;

第二列:用户组密码;

第三列:GID,即组ID;

第四列:用户列表,每个用户之间用逗号(,)分割;本子端可以为空,如果为空表示用户组为GID的用户名。

第4步:查看用户组密码文件

   /etc/gshadow是/etc/group的加密资讯文件,例如用户组(Group)管理密码就存放在这个文件中。/etc/gshadow和/etc/group是互补的两个文件;对于大型服务器,指对很多用户和组,定制一些关系结构比较复杂的权限模型,设置用户组密码实际有必要的。例如,我们不想让一些非用户组成员永久拥有用户组的权限和特性,这是可以通过密码验证的方式来让某些用户临时拥有一些用户组特性,这时就要用到用户组密码。

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

    

在上图中所示的文件中,有4列,每一列对应的释义如下:

第一列:用户组名称;

第二列:用户组密码,这个段可以是空的或有感叹号(!),如果是空的或有感叹号(!),表示没有密码;

第三列:拥护者管理者,这个字段也可以为空,如果有多个用户着管理者,用“,”号分割。

第四列:组成员,如果有多个成员,用逗号(,)分割。

第5步:建立与删除用户

CentOS中,建立与删除用户的主要命令以及释义如下:

【useradd yhy】建立yhy用户。


【passwd yhy】为yhy用户设置密码,密码输入时无任何显示。


【useradd ybs -d /home/y】新建ybs用户,并指定家目录为/home/y。



【userdd userl -d / home/user1】此处可以不加-d参数,因为用户的默认家目录就在/home下与用户名相同的目录下。



【useradd user2】增加新用户user2用户默认家目录为/ home/user2。



【useradd yhy】删除用户,但不删除家目录。



【useradd -r ybs】删除ybs用户,并删除用户家目录。



【useradd -l user2 user1】修改用户user1名称为user2。

【useradd -L user2】锁定用户名user2,锁定后user2不能登录。

【useradd -U user2】锁定用户名user2。

【su - user1】root用户切换到普通用户,不需要密码。


【su - root】普通用户切换到root用户,需要root密码。


第6步:建立与管路用户组

CentOS中,建立与管理用户组的主要命令以及释义如下:

【groupadd grp1】新建用户组grpl.



groupdel grp1】删除用户组grpl。



groupmod grp2 grp1】修改用户组名称 grp1为grp2。



【gpsswd -a user2 grp2】把用户user2加入到用户组grp2中。



【gpasswd -d user2 grp2】把用户uer2从用户组grp2中删除。



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

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

【who am i】显示当前以那个用户登录。


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


【who】显示目前登入系统的用户简要信息。 


【last】记录每个用户的登录次数和持续时间等信息。


【finger】查找并显示用户信息如【finger zhangs】表示查看zhangs用户信息。

【su - user1】切换用户并切换到user的家目录。


【ntsysv】启动/关闭系统中的服务。

【setup】设置系统运行参数。

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

【任务实施】

第1步:认识文件权限

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

   

   第一个文字一般用来区分文件和目录:d表示是一个目录,事实上在ext2fs中,目录是一个特殊的文件。-表示一个普通的文件。l表示这是一个符号链接文件实际上它指向另一个文件。b,c分别表示区块设备和其他的外围设备,是特殊类型的文件。s、p这些文件关系到系统的数据结构和管理,通常很少见到。

   第2-10个字符是用来表示一般权限,每组为3个,左边3个字符表示所有权限,中间3个字符表示与所有者同一组的用户权限,右边3个字符是其他用户的权限。这3个一组共9个字符,代表的意义如表(1)所示

               表(1) 文件权限意义对照表 


下面举例说明如表(2)所示:

           表(2)  文件权限对照


每个用户都拥有自己的专属目录,即家目录,通常集中放置在/home目录下,这些专属目录的默认权限为rwx——————,表示目录所有这本身有所有权限,表示其他用户无法进入该目录。执行【mkdir】命令所创建的目录,其默认权限为rwxr—xr—x,用户可以根据需要修改目录的权限。

文件和目录权限的表示,是用r、w、x这3个字符来代表所有者、用户组和其他用户的权限。有时,字符似乎过于麻烦,因此还有另外一种方法是以数字来表示权限,而且仅需3个数字。我们把r、w、x分别用4、2、1来表示,权限数字之和即可代表对应权限,具体如下:

r:对应数值4;  w:对应数值2;  x:对应数值1;  —:对应数值0。

r、w、x合起来就是4+2+1=7,一个rwxrwxrwx权限全开放的文件,数值表示为777;而完全不开放权限的文件—————————,其数字表示为000.下面如表(3)所示字符说明:

                                       表(3)  文件字符表示与数字表示对照表

      

第2步:使用【chmod】命令改变文件或目录的访问权限

在文本模式下,可执行【chmod】命令改变文件和目录的权限。

【chmod 777 123.txt】把123.txt文件的权限设置为777.


【chmod 777/home/user】仅把/home/user目录的权限设置为rwxrwxrw。


【chomd -R 777 /home/user】将整个/home/user目录与其中的文件和子目录的权限都设置为rwxrwxrwx。


【chomd u=rwx,g=tx,o=rx 123.txt】把123.txt文件设置为755的权限。


这里的u=rwx代表user(文件的拥有者)的权限等于rwx,g=rx代表group(所属组)的权限等于rx,o=rx代表other(其他人)的权限等于rx。

第3步:更改文件的所有者以及所属组

文件与目录的权限可以改变,使用【chown】命令还可以改变其所有者及所属用户组。

先使用【touch 123.txt】命令创建一个文件后再执行【ls -l】或【ll】命令查看文件的情况,如图 1-6 所示:

  

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

panyongliang,如图 1-7 所示:

 

  要改变所属组,可以使用【chown :panyongliang 123.txt】命令把123.txt文件所属组改为panyongliang,然后使用【ls -l】命令查看文件的详细信息,如图 1-8 所示:


  要修改目录的权限,使用-R才数就可以了,方法和前面一样。除了可以通过【chown】命令改变文件的拥有者及所属组外,还可以通过【shgrp】命令改为文件的的所属组。

【chgrp yangs /etc/123.txt】修改/etc/123.txt属组为yangs。

【chmod yhy.zck a.txt】或【chmodnyhy:zck a.txt】把a.txt文件的拥有者改为yhy,所属组改为zck。

当然,前提条件是yhy用户以及zck用户组存在于系统中。然后可以使用【ls -l】命令查看 以下执行后的结果。

第4步:认识umask

   当我们登录系统之后创建一个文件总是会有一个默认权限,那么这个权限怎么来的?这就是umask的功能。umask设置了用户创建文件的默认权限,它与chmod的效果刚好相反,umask设置的是权限“补码”,而chmod设置的是文件权限码。一般可在/etc/profile、/etc/bashrc、/$[HOME]/.bash_profile、/$[HOME]/.profile或/$[HOME]/.bashrc中设置umask值。具体取决于Linux发行版本。

   默认的权限可用【umask】命令修改,用法非常简单,只需执行【umask 777】命令,便代表屏蔽所有的权限,因而之后建立的文件或目录,其权限都变成了000,以此类推,如图 1-9 所示:


   如图9所示,当执行【umask 777】命令后,再建立的文件夹的权限默认为000。通常/root账号搭配【umask】命令的数值为022、027和077,普通用户则是采用002,这样所产生的权限一次为755、750、700和775.用户登录系统时,用户环境就会自动执行【umask】命令来决定文件、目录的默认权限。

第5步:识别特殊权限

  Linux引入sui、sgid、sticky这3种特殊权限,能够更加方便、有效和安全地控制文件。

 当在一个目录或文件上加入suid特殊权限时,如果原来目录或文件的属主具有x(执行)权限,就会用小写的s来代替x;如果原文件或目录不具有x(执行)权限,就会用大写S来代替x。

 同样,sgid、sticky和suid相同,如果原来目录或文件的属组具有x(执行)权限,就会用小写的s来代替x;如果原来文件或陌路不具有x(执行)权限,就会用大写S来代替x。

 如果在一个文件或目录上加入sticky权限时,若原来文件或目录的其他用户有x(执行)权限时,就用小写t代替x;如果源文件或目录没有x权限时,就用大写T代替x权限。

 可以用chmod的字符或数字的方式修改特殊权限,下例以数字方式实现,如图1-1-1所示:


  从图1-1-1的操作结果来看,对于123.txt这个文件,属主、属组、其他人都没有执行权限,其权限用数字表示为644,通过【chmod 7644 123.txt】命令都加上特殊权限,然后再通过【ll】命令查看,发现属主、属组、其他用户的权限变为S、S、T。

 对于yhy这个文件,属主、属组、其他人都有执行权限,其权限用数字表示为755,通过【chmod 7755 yhy】命令都加上特殊权限,然后再通过【ll】命令查看,发现属主、属组、其他用户的执行权限变为s、s、t。

第6步:识别文件颜色

从图1-1.1中,我们可以看出,在Linux中,稳健的颜色都是有含义的。其中,Linux中文件名颜色不同,代表文件类型不一样。具体如下所示:

浅蓝色:表示连接文件。

灰色:表示其他文件。

绿色:表示可执行文件。

红色:表示压缩文件。

蓝色:表示目录。

红色闪烁:表示链接文件有问题。

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


【touch a.txt】增加的一般文件,文件颜色为白色。


【chmod 755 a.txt】增加可执行权限后,文件颜色变为绿色。


【ln /etc/abc.txt 345.txt】执行该命令后,文件颜色变为天蓝色(建立345.txt为/etc/abc.txt的快捷方式)。

第7步:总结常用的几个命令

ConOS中常用的有关权限的几个命令以及释义如下,熟悉它们会让你的运维事半功倍。

【chmod u+x,g-x,o=x test】所有者加上执行权限,组成员减少执行权限,其他成员设置为执行权限。


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


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

【umask】查看当前umask参数。


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


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


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


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

【chmod 755 /home/dirl】改变filel的文件权限为755。


                  任务七  管理rpm软件包与压缩包

【任务说明】

   大部分Linux软件扩展名为.rpm(RedHat Package Manager),最早由RedHat公司提出的软件包标准,后来随着rpm的不断发展而有增加许多功能,逐渐成为Linux公认的软件包管理标准。支持该格式的场上有RedHat Linux、Suse Linux、Mandrive Linux。扩展名为.deb是Debain Linux提供的一种包封装格式;扩展名为.tar、gz.tar、Z.tar.bz2或.tgz是使用UNIX系统打包工具tar打包的。扩展名为.bin的一般是一些商业软件。通过扩展名可以了解软件格式,进而了解软件安装。

   使用rpm是可能会遇到软件包依赖性的问题,第一种解决方案是安装好所有的依赖包,第二种方式是使用urpmi/apt/yum来自动安装依赖包。

   rpm就会将套件的信息写入/var/lib/rpm目录中,所以,在进行查询时或者预计要升级时,相关的信息就会由/var/lib/rpm目录的内容来提供。

   本人无的主要目的是熟悉Linux系统中的rpm软件的安装与常用的几个压缩与解压。

【任务实施】

为了简化人物的实施,我们把此任务分解成下面2个子任务来学习。

【子任务一】管理rpm软件包。

【子任务二】管理压缩软件包。

【子任务一】管理rpm软件包

rpm有5种操作模式,分别为:安装、卸载、升级、查询和验证。

第1步:查询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文件所在安装包中的各个文件分别被安装到那个目录下。


第2步:安装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显示安装进程)

第3步:升级rpm软件包

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

【rpm -U example.rpm】升级example.rpm软件包。

【rpm -Uvh example.rpm】加参数v先是升级是详细信息,加参数h安装进程。

第4步:卸载rpm软件包

使用【rpm -e】命令卸载已经安装好的软件包。

【rpm -e tomcat4】卸载tomcat4软件包。

(备注:包名可以包含版本号等信息,但是不可以有扩展名。rpm,例如卸载软件包proftpd-l.2.8-1,可以用以下格式)

【rpm -e proftpd-1.2.8-1】

rpm -e proftpd-1.2.8

rpm -e proftpd-

rpm -e proftpd

  有时会出现一些错误或警告:...is neede by...这说明这个软件被其他软件需要,不能随便卸载,可以用【rpm -e --nodeps】命令强行卸载。

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

   在实际软件安装、卸载、升级等的操作中,可能还会存在软件的依赖等一系列问题,在家上面步骤中的参数的同时,还可以加下参数:

--force,强行操作,如强行安装删除。

--requires,先是该包的依赖关系。

--nodeps,忽略依赖关系并继续安装操作。

【rpm -e --nodeps vsftpd】忽略依赖关系并继续删除vsftpd软件包。

rpm -i --nodeps vsftpd】忽略依赖关系并继续安装vsftpd软件包。


rpm -e --requires vsftpd】显示该包的依赖关系并安装veftpd软件包。

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


第6步:认识rpm的命名规律

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

【子任务二】管理压缩软件包

  在Linux系统的世界中,除了rpm软件包,还有很多压缩软件包,所以在此子任务中,需要熟悉压缩软件包的管理等操作。

第1步:管理tar软件包

  使用tar命令加各种参数来管理tar软件包,具体命令以及释义如下:

【tar cvf aa.tar aa.txt】建立一个tar包。


【tar xvf aa.tar】解压一个tar包。


【tar cvfz aa.tar.gz aa.txt】建立一个tar.gz包。


第2步:管理zip包

   zip包是一个使用广泛的压缩程序,文件经它压缩后会另外产生具有.zip扩展名的压缩文件。使用【zip】命令加各种参数来管理zip软件包,具体命令以及释义如下。

【zip yhy.zip yhy.txt】压缩yhy.txt文件为yhy.zip。



【zip -r test.zip./*】将当前目录下的所有文件和文件夹全部压缩成test.zip文件,表示递归压缩目录下所有文件。

【zip test2.zip test2/ *】打包目录。

【zip -d yhy.zip yhy.txt】删除压缩文件yhy.zip中的yhy.txt文件。

【zip -d yhy.zip yhy/ln.log】删除打包文件目录下的文件ln.log。

【zip -m yhy2.zip yhy1.txt】向压缩文件yhy1.zip添加yhy1.txt。

【zip yhy3.zip yhy3s/* -x yhy3s/ln.log】压缩文件是排除ln.log文件。

第3步:解压zip包

  unzip为.zip压缩文件的解压程序。zip包的解压一般采用【unzip】命令,具体命令如下。

【unzip yhy.zip】将压缩文件yhy.zip在当前目录下解压缩。

【unzip -n yhy.zip -d /tmp】将压缩文件yhy.zip在指定目录/tmp下解压缩,如果以有相同的文件存在,要求【unzip】命令不覆盖原先文件。

【unzip -o test.zip -d tmp/】将压缩文件yhy.zip在指定目录tmp下解压缩,如果以有相同的文件存在,要求【unzip】命令覆盖原先文件。

unzip -v yhy.zip】查看压缩文件所在目录,但不解压。

unzip a.zip】解压一个zip包。

第4步:gzip和gunzip等其他的压缩软件以及常用命令

Linux系统中还有其他的一些压缩工具以及命令,例如gz、tat.gz、bz2、tgz等,熟悉它们会让运维管理事半功倍。

(1)【gzip -d a.gz 3.tar.gz】解压一个gz包。

(2)【tar xvzf abc.tar.gz】解压一个tar.gz包。

(3)【gunzip 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 -l】查找系统中有多少个.gz文件,并统计数量。

(8)在家目录中创建如下内容,以便进行后面的命令操作。

【makdir /home/dirl die2 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)【makdir /tmp/unzip-ys1】建立unzip-ys1目录。

makdir ys1.zip -d /tmp/unzip-ys1】将ys1.zip解压到/tmp/unzip-ys1下。

(13)【zip -r/root/ys2.zip /root/*】降价目录下的文件压缩成文件ys2.zip。

(14)【makdir /tmp/unzip-ys2】建立unzip-ys2目录。

makdir ys2.zip -d /tmp/unzip-ys2】将ys2.zip解压到/tmp/unzip-ys2下。

(15)将(8)中的文件file1、file2、file3分别压缩成.gz的形式。

tar cvfz file1.tar.gz dirl/file1】将dirl/file1文件压缩成file1.tar.gz。

tar cvfz file2.tar.gz dirl/file2】将dirl/file2文件压缩成file2.tar.gz。

tar cvfz file3.tar.gz dirl/file3】将dirl/file3文件压缩成file3.tar.gz。

(16)将(15)中形成的.gz压缩文件复制到/tmp/gunzip目录并解压。

【makdir /tmp/gunzip】建立gunzip目录。

【cp dirl1/file1.gz dirl1/file2.gz dirl1/file3.gz /tmp/gunzip】复制压缩文件到新建目录中。

【gzip -dv /tmp/gunzip/*】压缩gunzip目录下的所有文件。

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

【任务说明】

   YUM(Yellow dog Updtater Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件管理器。基于rpm包管理,能够从指定的服务器自动下载rpm包并且安装,就可以自动处理依赖性的关系,并且一次性安装所有依赖的软件包,无需繁琐地一次次的下载、安装。

   YUM的关键之处是要有可靠的repository,也就是软件的仓库,它可以是http或ftp站点,也可以是本地软件池,但必须包含rpm的header,header包括了tpm包的各种信息,包括描述、功能、提供的文件、依赖性等。正搜集了这些header并加以分析,才能自动化地完成余下的任务。

  而本任务的主要目的是配置本地以及网络YUM源并进行软件的自动安装。

【任务实施】

【子任务一】配置本地YUM源。

【子任务二】配置国内网络YUM源。


【子任务一】 配置本地YUM源

   在CentOS系统的安装光盘中,存放了许多我们常用的软件包,使用起来非常方便,在没有外网的环境中,我们只需要搭建好本地的YUM源,即可进行大部分软件的安装。

第1步: 查看系统默认安装的YUM

安装CentOS操作系统是基本都会默认安装YUM,不需要另外安装,输入命令查询即可。

【rpm -qa yum】查看安装的YUM主程序。


【rpm -qa |grep yum】查看安装的YUM相关程序。


第2步:挂载系统安装光盘

 把光盘放入光驱,然后使用【mount /dev/cdrom/mnt】命令把光盘挂在/mnt这个常用的挂载点。挂载成功后会在/mnt目录下看到光盘中的文件。

第3步:备份默认YUM配置文件

再修改配置文件之前,先备份要修改的文件,养成好的工程习惯。

【cd /etc/yum.repos.d/】进入YUM配置的目录下。


【ls】会开到CentOS系统默认的4个以repo为扩展名的配置文件。


【mkdir /etc/yum.repos.d/bak】建立备份文件夹。


【mv /etc/yum.repos.d/Cent* /etc/yum.repos.d//bak】备份原来的配置文件,移动原有的配置文件到备份文件夹中。


第4步:编辑自己的repo文件

使用下面的命令新建一个自己的YUM源。

【vim /etc/yum.repos.d/local.repo】新建local.repo文件。

然后按Ese键,后输入【:wq】保存后退出。最后使用【yum list】命令更新YUM配置即可查看到配置好的YUM源。


第5步:总结repo文件格式

所有repository服务器设置都应该遵循所下规则。

[serverid]

name=Some name for this server

beseurl=url://path/to/repository/

serverid是用于区分各个不同的repository,必须有一个独一无二的名称;name是对repository的描述,支持$releasever、$baseurl这样的变量;baseurl是服务器设置中最重要的部分,只有设置正确,才能从上面获取软件。它的格式:

baseurl=url://server1/path/repository/=url://server2/path/repository/=url://server3/path/repository/

其中,url1支持的协议有http://、ftp://、file://3种。baseurl后可以跟很多个url,用户可以自己改为速度比较快的镜像站,但baseurl只能有一个,也就是说不能像如下格式:

baseurl=url://server1/path/repository/

baseur=url://server2/path/repository/

baseur=url://server3/path/repository/

其中,url指向的目录必须是这个repository header目录必须是上一级,它也支持$releasever、$baseurl这样的变量。

第6步:使用YUM源安装软件

【yum】命令搭配参数install表示安装指定的软件,详细使用方法如下。

【yum install -y dialog】通过YUM源安装dialog软件。



【yum install yum-fastestmirror】自动搜索最快镜像插件。



yum install yumex】安装YUM图形窗口插件

yum locinstall -y dialog】安装本地的rpm软件包dialog。

第7步:使用YUM更新软件

【yum】命令搭配参数update表示更新指定的软件,详细使用的方法如下。

【yum update -y dialog】更新dialog软件包。

【yum check -y dialog】检查是否有可用的更新dialog软件包。


【yum localupdate -y dialog】如果有dialog的新版本,而且也下载到本地,就可以这样本地更新dialog。

【yum update】全部更新YUM源。

第8步:使用YUM卸载软件

【yum】命令搭配参数remove表示卸载或删除指定的软件,详细使用的方法如下。

【yum remove -y dialog】卸载dialog软件包。



yum remove|erase packagel】删除程序包packagel。

第9步:【YUM】命令的其他选项

【yum】命令搭配其他参数的详细使用方法如下。

【yum 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。


yum clean oldheaders】清楚缓存目录下旧的headers。





第10步:查询已安装的dialog软件

通过YUM安装的软件,依然使用【rpm】命令来查询软件的安装情况。

【rpm -qa dialog】查询dialog软件安装信息。


【子任务二】配置国内网络YUM源

第1步:配置上海交通大学YUM源

修改/etc/yum.repos.d/CentOS-Base.repo为如下内容:


第2步:企业YUM源列表

搜狐开镜源镜像站:http://mirrors.sohu.com/。

网易开镜源镜像站:http://mirrors.163.com/。

第3步:大学教学YUM源列表

北京理工大学:

http://mirror.bit.edu.cn(IPv4 only)

http://mirror.bit6.edu.cn(IPv6 only)

北京交通大学:

http://mirror.bjtu.edu.cn(IPv4 only)

http://mirror6.bitu.edu.cn(IPv4 only)

http://debian.bitu.edu.cn(IPv4+IPv6)

兰州大学:http://mirror.lzu.edu.cn/

厦门大学:http://mirrors.xmu.edu.cn/

清华大学:

http://mirrors.tuna.tsinghua.edu.cn/(IPv4+IPv6)

http://mirrors.6.tuna.tsinghua.edu.cn/(IPv6 only)

http://mirrors.4.tuna.tsinghua.edu.cn/(IPv4 only)

天津大学:

http://mirrors.ustc.edu.cn/(IPv4+IPv6)

http://mirrors4.ustc.edu.cn/

http://mirrors6.ustc.edu.cn/

东北大学:

http://mirror.neu.edu.cn/(IPv4 only)

http://mirror.neu6.edu.cn/(IPv6 only)

电子科技大学:http://ubuntu.uestc.edu.cn/。


                 拓 展 训 练

通过查询网络或课本资料,完成下列试题,强化自我学习能力。

一、选择题

1、使用vim编辑只读文件时,强制存盘并退出的目录是( C )

A、【:w!】                   B、【:q!】

C、【:wq!】                  D、【:e!】

2、使用( A )命令可以把两个文件合并为一个文件

 A、【cat】                   B、【grep】

C、【awk】                  D、【cut】

3、使用【ls -al】命令列出下面文件列表,( B )文件是符号连接文件

A、【-rw-rw-rw- 2 hel-s users 56 sep 09 11:05 hello】                  

B、【-rwxrwxrwx 2 hel-s users 56 sep 09 11:05 goodbey】

C、【Drwxr—r—2 hel users 1024 sep 10 08:10 zhang】                 

D、【Lrwxr—r—1 hel users 1024 sep 12 08:12 cheng】

4、对下面的命令:【$ cat nametest1 test2>name】,说法正确的是( B )

A、将test1、test2合并到name                  

B、命令错误,不能将输出重定向到输入文件中

C、当name文件为空时命令正确                 

D、命令错误,应该为【$ cat name test1 test2>>name】

5、假设当前处于vi的命令模式,现在要进入插入模式,以下快捷键中无法实现的是( D )

A、I       B、A        C、O        D、1

6、目前处于vi的插入模式,若要切换到末行模式,以下操作方法中正确的是( B )

A、按Esc键          B、按Esc键,然后按:键       

C、直接按:键        D、直接按shift+:组合键

7、以下命令中,不能用来查看文本文件内容的是( A )

A、【less】            B、【cat】       

C、【tail】             D、【ls】

8、在Linux中,系统管理员(root)状态下的提示符为( B )

  A、$         B、#     

  C、%            D、>

9、删除文件的命令是( D )

A、【mkdir】              B、【rmdir】       

C、【mv】            D、【rm】

10、建立一个新文件可以使用的命令是( D )

A、【chmod】              B、【more】     

C、【cp】            D、【touch】

11、以下( B )是显示文件保存用户账号的信息

A、/etc/user          B、/etc/gshadow      

C、/etc/shadw            D、/etc/fatab

12、以下对Linux用户账户的描述中,正确的是( B )

A、Linux的用户账户和对应的口令均存放在passwd文件中

B、passwd文件只有系统管理员才有权存取

C、Linux的用户账户必须设置了口令才能登录

D、Linux的用户口令存放在passwd文件中,每个用户对它有读的权限

13、新建用户使用useadd命令,如果要指定用户的主目录,需要使用( B )选项

    A、-g          B、-d       

    C、-u              D、-s

14、为了保证系统的安全,现在的Linux系统一般将/etc/passwd密码文件加密后,保存为( D )文件

A、/etc /group             B、/etc/netgroup       

C、/etc/libsafe.notify          D、/etc/shadow

15、当用root登录时,( D )命令可以改变用户Larry的密码

A、【su larry】              B、【changepassword larry】      

C、【password Larry】        D、【passwdLarry】

16、如果刚刚为系统添加了一个名为Kara的用户,则在默认的情况下,Kara所属的用户组是( C )

A、user             B、group 

C、Kara             D、root

17、执行【chmodo+rwfile】命令后,file文件的权限变为( C )

A、同组用户可读写file文件             B、所有用户可读写file文件     

C、其他用户可读写file文件             D、文件所有者可读写file文件

18、若要改变一个文件的拥有者,可通过( A )命令来实现

A、【chmod】              B、【chown】      

C、【usermod】            D、【file】

19、一个文件属性为drwxrwxrwt,则这个文件的权限是( A )

A、任何用户皆可读取,可写入              B、root可以删除该目录的文件

C、给普通用户以文件所有者特征            D、文件拥有者有权删除该目录文件

20、某文件的组外成员的权限为只读,所有者有全部权限,组内的权限为读与写,则该文件的权限值为( D )

A、467           B、674      

C、476           D、764

21、光盘所使用的文件系统类型为( D )

A、ext2              B、ext3      

C、swap             D、ISO 9600

22、在以下设备文件中,代表第二个IDE硬盘的第一个逻辑分区设备文化节为( D )

A、/etc/hdb1            B、etc/hda1   

C、/etc/hdb5            D、/dev/hdb1

23、将光盘CD-ROM(cdrom)安装到文件系统的/mnt/cdrom目录的命令是( D )

A、【mount/,mnt/cdrom】                 B、【mount/mnt/cdrom/dev/cdrom】      

C、【mount/dev/cdrom/mnt/crdom】        D、【mount/devt/cdrom】

24、【tar】命令可以进行文件的( A )

A、压缩、归档和解压缩            B、压缩和解压缩

C、压缩和归档                    D、归档和解压缩

25、若要将当前目录中的myfile.txt文件压缩成myfile.txt.tar.gz,则实现的命令为( C )

A、【tar-cvf myfile.txtmyfile.txt.tar.gz】       B、【tar-zcvfmyfile.txt myfile.txt.tar.gz】

C、【tar-zcvf myfile.txt.tar .gz myfile.txt】     D、【Tar-cvfmyfile.txt .tar .gz myfile.txt】

26、在Linux系统中,主机名保存在( A )配置文件中

A、/etc/hosts                B、/etc/modules 

C、/etc/sysconfig/network      D、/etc/network

27、Linux系统的第二块以太网卡的配置文件全路径名是( D )

A、/etc/sysconfig/network/ifcfg-eth0           B、/etc/sysconfig/network/ifcfg-eth1   

C、/etc/sysconfig/network-scripts/ifcfg-eth0     D、/etc/sysconfig/network-scripts/ifcfg-eth1

28、在Linux系统中,用于设置DNS客户的配置文件是( B )

A、/etc/hosts               B、/etc/resolv.conf

C、/etc/dns.conf            D、/etc.nis.conf

29、若要暂时禁用eth0网卡,下列命令中可以实现的是( D )

A、【ifconfig eth0】              B、【ifup eth0】

C、【ifconfig eth0 up】            D、【ifconfig eth0 down】

30、以下命令中可以重新启动计算机的是( A )

A、【reboot】            B、【halt】

C、【shutdown -h】       D、【init 0】

二、简答题

1、在Linux中有一个为列表内容,格式如下:

1rwxrwxrwx 1 hawkeye users 6 Ju1 18 09:41nurse2 – >nuse1

1)要完整显示如上文件列表信息,应该使用什么命令?写出完整的命令行。

    答: ls –l nurse2

(2)上述文件列表内容的第一列内容“1rwxrwxrwx”中“1”是什么含义?对于其他类型的文件或目录等还可能会出现什么字符?它们分别表示什么含义?

   答:表示文件类型,该文件为符号链接文件。其他类型的文件:—普通文件;d 目录;b 特殊块文件;c 特殊字符文件。

(3)上述文件列表内容的第一列内容“1rwxrwxrwx”中的第一、二、三个rwx分别代表什么含义?其中的“r”“w”“x”分别表示什么含义?

   答:分别表示对文件nurse2的所有者、同组成员、其他人员;其中“r”表示读取;“w”表示写入;“x”表示执行。

(4)上述文件列表内容的第二列内容“1”是什么含义?

   答:表示文件nurse2的链接数 

(5)上述文件列表内容的第三列内容“hawkeye”是什么含义?

   答:表示文件nurse2的所有者

(6)上述文件列表内容的第四列内容“users”是什么含义?

   答:表示文件nurse2的属组 

(7)上述文件列表内容的第五列内容“6”是什么含义?

   答:表示文件nurse2的字节数

(8)上述文件列表内容中的“Jul 18 09;41”是什么含义?

   答:表示文件nurse2被创建的日期和时间

(9)上述文件列表内容的最后一列内容“nurse2->nursel”是什么含义?

   答:表示nurse2文件被符号链接到nurse1文件

2、Linux支持哪些常用的文件系统?

  答:Linux支持的文件系统是:ext、ext2、ext3、ext4、JFS2等文件系统。

3、简述标准的Linux目标结构及其功能?

  答:

4、在命令行下手工建立一个新账号,要编辑哪些文件?

答:useradd “你新建的用户名”,这个命令建立用户;passwd “你新建的用户名”,这个命令设置密码。
useradd -musername是最简单的方法,再在/home 目录下建立一个用户username; 
useradd -d 是在指定的目录下进行建立如:useradd -d/home/user -s /bin/sh username,然后用语句:
passwd username 就可以为新建的用户设置密码 两种方法都可以新增用户username

5、Linux用哪些属性信息来说明一个用户账号?

  答:登录名、口令、用户标识号、用户名、用户主目录、命令解释程序。

6、 如何锁定和解锁一个用户账号?

  答:

 (1)禁止个别用户登录。比如禁止lynn用户登录。

passwd -l tes

这就话的意思是锁定test用户,这样该用户就不能登录了。

 passwd-u test

对锁定的用户lynn进行解锁,用户可登录了。

(2)我们通过修改/etc/passwd文件中用户登录的shellvi /etc/passwd

     test:x:500:500::/home/test:/bin/bash

 更改为:

      test:x:500:500::/home/lynn:/sbin/nologin

  该用户就无法登录了。
(3)禁止所有用户登录。
    touch /etc/nologin
    除root以外的用户不能登录了!

7、 Vim编辑器有哪3大类工作模式?其相互之间如何切换?

  答:3大类工作模式分别为:命令模式、编辑模式以及末行模式。在最初使用vim打开一个文件的时候,处在命令模式下,这时使用命令i、I、a、A、o、O都可以进入编辑模式,而想放回到命令模式只需要在编辑模式下敲击ESC键即可。 

8、 Linux与网络配置相关的配置文件主要有哪些?

答:

(1)/etc/sysconfig/network

(2)/etc/HOSTNAME

(3)/etc/hosts

(4)/etc/services

(5)/etc/host.conf

(6)/etc/resolv.conf

(7)/etc/rc.d/init.d/network

9、 如何利用ifconfig工具禁用和重启网络接口?

   答:在使用ifconfig 命令工具禁用和重启网络接口,在ifconfig后面接网络接口,然后加上 down或up参数,就可以禁用和重启相应的网络接口了。当然也可以用专用工具ifup和ifdown 工具

例如:网卡名 eth0
启用网卡命名 ifconfig eth0 up
禁用网卡命名 ifconfig eth0 down




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值