




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、5. 项目项目2 Linux常见命令常见命令l任务三任务三 掌握权限管理命令掌握权限管理命令l2学时学时理论理论+2学时实践学时实践本课教学目标本课教学目标l掌握基本权限命令的功能和使用;掌握基本权限命令的功能和使用;l理解权限对于目录和文件的含义。理解权限对于目录和文件的含义。本课教学重难点本课教学重难点u教学重点教学重点 chmod chmod命令;权限的基本含义;命令;权限的基本含义;chownchown、chgrpchgrp命令。命令。u教学难点教学难点 umask umask权限、权限、ACLACL权限和权限和sudosudo权限。权限。一、权限介绍一、权限介绍任务任务三三 掌握权限
2、掌握权限管理命令管理命令1 1、权限的重要性权限的重要性 我们经常使用的我们经常使用的WindowsWindows实际上只是个人计算机,而使用个人计算机的用户主要是自实际上只是个人计算机,而使用个人计算机的用户主要是自己,或者是家人和好友,所以,我们一般都是使用默认的管理员身份登录的。因为管理员己,或者是家人和好友,所以,我们一般都是使用默认的管理员身份登录的。因为管理员拥有最高权限,导致我们已经习惯了计算机中没有权限等级的概念,也无需不同的用户,拥有最高权限,导致我们已经习惯了计算机中没有权限等级的概念,也无需不同的用户,其实这是个见怪不怪的不正常现象,对于个人机也是感觉不到问题的。但对于服
3、务器是肯其实这是个见怪不怪的不正常现象,对于个人机也是感觉不到问题的。但对于服务器是肯定不行的,因为服务器存储的数据都是非常重要的资源,而且数据量越大,价值越高,比定不行的,因为服务器存储的数据都是非常重要的资源,而且数据量越大,价值越高,比如游戏公司,它的核心价值就是服务器集群中存储的数据资源,一旦这些数据丢失或破坏,如游戏公司,它的核心价值就是服务器集群中存储的数据资源,一旦这些数据丢失或破坏,轻则造成重大损失,重则导致破产。而服务器的维护也不是由一两个人,而是一个团队在轻则造成重大损失,重则导致破产。而服务器的维护也不是由一两个人,而是一个团队在维护的,这必然要求对用户有严格的分级,对权
4、限有严格的设定,否则,如果每个人都能维护的,这必然要求对用户有严格的分级,对权限有严格的设定,否则,如果每个人都能对服务器的数据进行随便操作,那安全稳定性从何谈起呢。所以,在服务器上,绝对不是对服务器的数据进行随便操作,那安全稳定性从何谈起呢。所以,在服务器上,绝对不是所有用户都具有所有用户都具有rootroot权限的,而需要根据不同的岗位级别,合理分配用户等级和权限。权限的,而需要根据不同的岗位级别,合理分配用户等级和权限。 可以说,可以说,因为服务器最看重的就是安全稳定,而,因为服务器最看重的就是安全稳定,而严谨的权限定义就是为安全服务的。严谨的权限定义就是为安全服务的。权限是服务器配置的
5、灵魂问题之一权限是服务器配置的灵魂问题之一一、权限介绍一、权限介绍任务任务三三 掌握权限掌握权限管理命令管理命令2 2、文件的所有者、所属组和其他人文件的所有者、所属组和其他人 前面我们在讲解前面我们在讲解lsls命令时,简单解释过所有者和所属组,例如:命令时,简单解释过所有者和所属组,例如: rootMASTER # ls -l install.log.syslog rootMASTER # ls -l install.log.syslog -rw-r-r-. 1 -rw-r-r-. 1 7690 12 7690 12月月 4 04:58 install.log.syslog 4 04:58
6、 install.log.syslog 结果的第三列就是文件的所有者,为结果的第三列就是文件的所有者,为rootroot用户,第四列就是文件的所属组,为用户,第四列就是文件的所属组,为rootroot组。组。一般来讲,文件的所有者默认就是这个文件的建立者,而系统中绝大多数系统文件都是由一般来讲,文件的所有者默认就是这个文件的建立者,而系统中绝大多数系统文件都是由rootroot建立的,所以绝大多数文件的所有者都是建立的,所以绝大多数文件的所有者都是rootroot。 用户组就是一堆用户的集合用户组就是一堆用户的集合。为什么要有用户组这个概念呢,举个简单的例子,有为什么要有用户组这个概念呢,举个
7、简单的例子,有100100个用户,要使这个用户,要使这100100个用户对同一个文件具有相同的权限,一种做法是逐一设定每个用个用户对同一个文件具有相同的权限,一种做法是逐一设定每个用户对该文件的权限,这样做显然太繁琐,而另一种做法就是将这户对该文件的权限,这样做显然太繁琐,而另一种做法就是将这100100个用户建成一个组,个用户建成一个组,只需设定这个组与该文件的权限,则组中的每个用户都会拥有其所在组对该文件的权限。只需设定这个组与该文件的权限,则组中的每个用户都会拥有其所在组对该文件的权限。很显然,给一个用户组分配权限更方便,这就是用户组存在的主要意义。很显然,给一个用户组分配权限更方便,这
8、就是用户组存在的主要意义。root rootroot root一、权限介绍一、权限介绍任务任务三三 掌握权限掌握权限管理命令管理命令3 3、权限的含义权限的含义 ls ls命令长格式显示文件信息时,第一列不计后面的命令长格式显示文件信息时,第一列不计后面的“.”“.”,共有,共有1010位,第一位代表文位,第一位代表文件的类型,后九位表示文件的权限,例如:件的类型,后九位表示文件的权限,例如: rootMASTER # ls -l install.log.syslog rootMASTER # ls -l install.log.syslog 1 root root 7690 12 1 roo
9、t root 7690 12月月 4 04:58 install.log.syslog 4 04:58 install.log.syslog 对于第一部分对于第一部分“-rw-r-r-.”-rw-r-r-.”:第一位:第一位“-”“-”代表文件类型,后面的代表文件类型,后面的9 9位代表文件所位代表文件所有者、所属组和其他人对文件各自拥有的权限。有者、所属组和其他人对文件各自拥有的权限。最后那个最后那个“.”“.”是是CentOS 6CentOS 6以上的系统中以上的系统中才出现的,它表示该文件受才出现的,它表示该文件受SELinuxSELinux的安全规则管理,的安全规则管理,SELinux
10、SELinux简单来理解就是一种使简单来理解就是一种使LinuxLinux更加安全的机制。更加安全的机制。 - -rw-r-r-.rw-r-r-.一、权限介绍一、权限介绍任务任务三三 掌握权限掌握权限管理命令管理命令 下面单独详细介绍这下面单独详细介绍这1010位(位(-rw-r-r-rw-r-r-)符号的含义:)符号的含义: 第第1 1位(这里为位(这里为“-”“-”):代表文件的类型。在):代表文件的类型。在WindowsWindows中,文件的类型是用扩展名来中,文件的类型是用扩展名来区分的,区分的,LinuxLinux却是用权限位的第一位来表示的。却是用权限位的第一位来表示的。Linu
11、xLinux中常见的文件类型如下:中常见的文件类型如下:“-”“-”:普通文件。:普通文件。“d”“d”:目录文件。:目录文件。LinuxLinux中一切皆文件,所以目录也是文件的一种。中一切皆文件,所以目录也是文件的一种。“l”“l”:软链接文件。:软链接文件。“b”“b”:块设备文件。这是一种特殊的设备文件,存储设备都是这种文件。:块设备文件。这是一种特殊的设备文件,存储设备都是这种文件。“c”“c”:字符设备文件。这也是一种特殊的设备文件,输入设备都是这种文件,如鼠标、键盘等。:字符设备文件。这也是一种特殊的设备文件,输入设备都是这种文件,如鼠标、键盘等。 其中:其中:最常见的是前面的三
12、种文件类型。最常见的是前面的三种文件类型。一、权限介绍一、权限介绍任务任务三三 掌握权限掌握权限管理命令管理命令 下面单独详细介绍这下面单独详细介绍这1010位(位(-rw-r-r-rw-r-r-)符号的含义:)符号的含义: 第第2-42-4位(这里为位(这里为“rw-”“rw-”):代表文件所有者对文件拥有的权限。三种权限按顺序分):代表文件所有者对文件拥有的权限。三种权限按顺序分别为别为r r、w w和和x x,其中:,其中: r r:代表:代表readread,是读取权限。,是读取权限。 w w:代表:代表writewrite,是写权限。,是写权限。 x x:代表:代表executeex
13、ecute,是执行权限。,是执行权限。 如果有字母,则代表拥有字母对应的权限,如果是如果有字母,则代表拥有字母对应的权限,如果是“-”“-”,代表没有对应的权限。如,代表没有对应的权限。如这里是这里是“rw-”“rw-”,表示所有者,表示所有者rootroot用户对该文件拥有读写权限,而没有执行权限。用户对该文件拥有读写权限,而没有执行权限。一、权限介绍一、权限介绍任务任务三三 掌握权限掌握权限管理命令管理命令 下面单独详细介绍这下面单独详细介绍这1010位(位(-rw-r-r-rw-r-r-)符号的含义:)符号的含义: 第第5-75-7位(这里为位(这里为“r-”“r-”):代表文件所属组对
14、文件拥有的权限。这里为):代表文件所属组对文件拥有的权限。这里为“r-”“r-”代代表文件所属组表文件所属组rootroot组中除组中除rootroot用户以外的其他用户对文件只拥有读权限,而没有写权限和用户以外的其他用户对文件只拥有读权限,而没有写权限和执行权限。执行权限。 第第8-108-10位(这里为位(这里为“r-”“r-”):代表其他人对文件拥有的权限。这里为):代表其他人对文件拥有的权限。这里为“r-”“r-”代表其代表其他人对文件只拥有读权限,而没有写权限和执行权限。他人对文件只拥有读权限,而没有写权限和执行权限。 第第1111位位(最后那个最后那个“.”“.”):):是是Cen
15、tOS 6CentOS 6以上的系统中才出现的,它表示该文件受以上的系统中才出现的,它表示该文件受SELinuxSELinux的安全规则管理,的安全规则管理,SELinuxSELinux简单来理解就是一种使简单来理解就是一种使LinuxLinux更加安全的机制,这个大更加安全的机制,这个大家现在不理解没关系。家现在不理解没关系。二、基本权限命令二、基本权限命令chmod命令命令任务任务三三 掌握权限掌握权限管理命令管理命令1 1、命令格式命令格式 rootMASTER # chmod rootMASTER # chmod 选项选项 权限模式权限模式 文件名文件名 选项:选项: -R -R:递归
16、设置权限,也就是给子目录中的所有文件设定权限:递归设置权限,也就是给子目录中的所有文件设定权限。 修改文件基本权限的命令为修改文件基本权限的命令为chmodchmod。这里之所以强调。这里之所以强调,是因为在,是因为在LinuxLinux中还有中还有与其相对应的特殊权限(与其相对应的特殊权限(suidsuid、sgidsgid、sbitsbit等),特殊权限作为自学提升内容,本书不做等),特殊权限作为自学提升内容,本书不做阐述。阐述。 基本权限基本权限二、基本权限命令二、基本权限命令chmod命令命令任务任务三三 掌握权限掌握权限管理命令管理命令2 2、权限模式权限模式 chmod chmod
17、命令的权限模式的格式为命令的权限模式的格式为“用户身份用户身份赋予方式赋予方式权限权限”,具体解释如下:,具体解释如下:u 用户身份用户身份 u u:代表文件所有者(:代表文件所有者(useruser);); g g:代表文件所属组(:代表文件所属组(groupgroup) o o:代表其他人(:代表其他人(otherother);); a a:代表全部身份(:代表全部身份(allall)u 赋予方式赋予方式 + +:加入权限;:加入权限; - -:减去权限;:减去权限; = =:设置权限:设置权限u 权限权限 r r:读取权限(:读取权限(readread);); w w:写权限(:写权限(
18、writewrite);); x x:执行权限(:执行权限(executeexecute) 二、基本权限命令二、基本权限命令chmod命令命令任务任务三三 掌握权限掌握权限管理命令管理命令3 3、应用举例应用举例给单个身份给单个身份添加权限添加权限 rootMASTER # touch test rootMASTER # touch test /建立测试文件建立测试文件 rootMASTER # ls -l testrootMASTER # ls -l test-rw-r-r- 1 root root 0 2-rw-r-r- 1 root root 0 2月月 19 10:16 test 19
19、 10:16 test# # 这个文件的权限为:所有者具备读写权限,所属组具有只读权限,其他人具有只读权限这个文件的权限为:所有者具备读写权限,所属组具有只读权限,其他人具有只读权限 rootMASTER # chmod rootMASTER # chmod test test# # 给所有者添加执行权限给所有者添加执行权限 rootMASTER # ls -l testrootMASTER # ls -l test- -r-r- 1 root root 0 2r-r- 1 root root 0 2月月 19 10:16 test 19 10:16 test# #权限添加成功权限添加成功 u
20、+xu+xrwxrwx二、基本权限命令二、基本权限命令chmod命令命令任务任务三三 掌握权限掌握权限管理命令管理命令3 3、应用举例应用举例给多个身份给多个身份添加权限添加权限 rootMASTER # chmod rootMASTER # chmod test test# # 为所属组添加写权限,为其他人添加写权限,不同身份之间用为所属组添加写权限,为其他人添加写权限,不同身份之间用“,”“,”隔开隔开 rootMASTER # ls -l testrootMASTER # ls -l test-rwx-rwx 1 root root 0 2 1 root root 0 2月月 19 10
21、:16 test 19 10:16 test# # 权限添加成功权限添加成功 g+w,o+wg+w,o+wrw-rw-rw-rw-二、基本权限命令二、基本权限命令chmod命令命令任务任务三三 掌握权限掌握权限管理命令管理命令3 3、应用举例应用举例减少权限减少权限 rootMASTER # chmod rootMASTER # chmod test test# # 为所有者减去执行权限,为所属组减去写权限,为其他人减去写权限为所有者减去执行权限,为所属组减去写权限,为其他人减去写权限 rootMASTER # ls -l testrootMASTER # ls -l test- - 1 ro
22、ot root 0 2 1 root root 0 2月月 19 10:16 test 19 10:16 test# # 减去权限成功减去权限成功 u-x,g-w,o-wu-x,g-w,o-wrw-r-r-rw-r-r-二、基本权限命令二、基本权限命令chmod命令命令任务任务三三 掌握权限掌握权限管理命令管理命令3 3、应用举例应用举例用用“=”“=”号设置权限号设置权限 用用“+”“+”和和“-”“-”设置权限是比较麻烦的,因为首先得知道文件的原始权限是什么,而设置权限是比较麻烦的,因为首先得知道文件的原始权限是什么,而用用“=”“=”号可以直接按照自己的需求一步设置到位。号可以直接按照自
23、己的需求一步设置到位。 rootMASTER # chmod rootMASTER # chmod test test# # 为所有者赋予读写执行权限,为所属组赋予读写权限,为其他人赋予读写权限为所有者赋予读写执行权限,为所属组赋予读写权限,为其他人赋予读写权限 rootMASTER # ls -l testrootMASTER # ls -l test- - 1 root root 0 2 1 root root 0 2月月 19 10:16 test 19 10:16 test# #权限赋予成功权限赋予成功 使用使用“=”“=”号赋予权限的好处是不需要知道原始权限,但是在指令输入上依然不够
24、简号赋予权限的好处是不需要知道原始权限,但是在指令输入上依然不够简洁,实际运用中,我们一般是用更简洁的权限模式来赋予权限,即数字权限。洁,实际运用中,我们一般是用更简洁的权限模式来赋予权限,即数字权限。 u=rwx,g=rw,o=rwu=rwx,g=rw,o=rwrwxrw-rw-rwxrw-rw-二、基本权限命令二、基本权限命令chmod命令命令任务任务三三 掌握权限掌握权限管理命令管理命令4 4、数字权限数字权限 数字权限是最简单易懂的权限赋予方式,也是实际操作中最常用的方式,但是前提是数字权限是最简单易懂的权限赋予方式,也是实际操作中最常用的方式,但是前提是要熟记读、写、执行三种权限对应
25、的权限权值。要熟记读、写、执行三种权限对应的权限权值。 r r(读权限):对应权限权值为(读权限):对应权限权值为4 4 w w(写权限):对应权限权值为(写权限):对应权限权值为2 2 x x(执行权限):对应权限权值为(执行权限):对应权限权值为1 1 二、基本权限命令二、基本权限命令chmod命令命令任务任务三三 掌握权限掌握权限管理命令管理命令4 4、数字权限数字权限举例举例 rootMASTER # touch test1 rootMASTER # touch test1 /建立测试文件建立测试文件 rootMASTER # ls -l test1rootMASTER # ls -l
26、 test1-rw-r-r- 1 root root 0 2-rw-r-r- 1 root root 0 2月月 19 10:44 test1 19 10:44 test1# test1# test1文件的权限为文件的权限为644644(所有者:(所有者:r+w=4+2=6r+w=4+2=6,所属组:,所属组:r=4r=4,其他人:,其他人:r=4r=4) rootMASTER # chmod rootMASTER # chmod test1 test1# # 赋予文件赋予文件test1test1的权限为的权限为755755(所有者:(所有者:7=4+2+1=rwx7=4+2+1=rwx,所属
27、组:,所属组:5=4+1=r-x5=4+1=r-x,其他人:,其他人:5=4+1=r-x5=4+1=r-x) rootMASTER # ls -l test1rootMASTER # ls -l test1- - 1 root root 0 2 1 root root 0 2月月 19 10:44 test1 19 10:44 test1 755755rwxr-xr-xrwxr-xr-x二、基本权限命令二、基本权限命令chmod命令命令任务任务三三 掌握权限掌握权限管理命令管理命令4 4、数字权限数字权限赋予规律赋予规律 一般来讲,文件的权限是有一定的规律性,不会杂乱无章的,按照正常逻辑,所有
28、一般来讲,文件的权限是有一定的规律性,不会杂乱无章的,按照正常逻辑,所有者的权限总要大于所属组和其他人的权限,常见的几种权限如下:者的权限总要大于所属组和其他人的权限,常见的几种权限如下: 这是文件的基本权限,代表所有者拥有读、写权限,所属组和其他人拥有只读这是文件的基本权限,代表所有者拥有读、写权限,所属组和其他人拥有只读权限。权限。 这是文件的执行权限和目录的基本权限,代表所有者拥有读、写和执行权限,这是文件的执行权限和目录的基本权限,代表所有者拥有读、写和执行权限,而所属组和其他人拥有读权限和执行权限。而所属组和其他人拥有读权限和执行权限。 这是最大权限。在实际生产服务器中,要尽量避免给
29、文件或目录赋予这样的权这是最大权限。在实际生产服务器中,要尽量避免给文件或目录赋予这样的权限,因为这在一定程度上会造成安全隐患。限,因为这在一定程度上会造成安全隐患。 644644:755755: 777 777:三、基本权限的含义三、基本权限的含义任务任务三三 掌握权限掌握权限管理命令管理命令1 1、权限对文件的作用、权限对文件的作用 对文件拥有读权限,代表可以读取文件中的数据。也就是说可以对文件执行对文件拥有读权限,代表可以读取文件中的数据。也就是说可以对文件执行catcat、moremore、lessless、headhead、tailtail等文件查看命令。等文件查看命令。 对文件拥有
30、写权限,代表可以修改文件中的数据。也就是说可以对文件执行对文件拥有写权限,代表可以修改文件中的数据。也就是说可以对文件执行vimvim、echoecho等修改文等修改文件数据的命令。这里要特别注意一点:对文件拥有写权限,并不代表能删除该文件,因为能否对文件执行删除件数据的命令。这里要特别注意一点:对文件拥有写权限,并不代表能删除该文件,因为能否对文件执行删除操作取决于其上级目录是否具有写权限。这一点对初学者来说是比较难理解的,它涉及到文件在文件系统中是操作取决于其上级目录是否具有写权限。这一点对初学者来说是比较难理解的,它涉及到文件在文件系统中是如何存储等内容。事实上每一个文件在文件系统中分两
31、部分进行存储,一小部分叫如何存储等内容。事实上每一个文件在文件系统中分两部分进行存储,一小部分叫inodeinode,用于存储文件的相关,用于存储文件的相关属性信息(具体包括文件的属性信息(具体包括文件的inodeinode号、文件的权限、文件的所有者和所属组、文件大小、文件的时间信息以及文号、文件的权限、文件的所有者和所属组、文件大小、文件的时间信息以及文件数据真正保持的件数据真正保持的blockblock编号),即可得知去哪里可以找到文件的内容;另一部分叫编号),即可得知去哪里可以找到文件的内容;另一部分叫blockblock部分,也就是文件数部分,也就是文件数据存储的地方。而文件的文件名
32、信息是存储在上级目录的据存储的地方。而文件的文件名信息是存储在上级目录的blockblock中的,所以要删除文件,得上级目录拥有写权限,中的,所以要删除文件,得上级目录拥有写权限,这一部分内容初次看会比较深奥,大家先简单了解记住这个常识即可,慢慢地自然就理解了。这一部分内容初次看会比较深奥,大家先简单了解记住这个常识即可,慢慢地自然就理解了。 对文件拥有执行权限,代表文件可以运行。但在对文件拥有执行权限,代表文件可以运行。但在LinuxLinux中,文件最终能否正确执行取决于两方中,文件最终能否正确执行取决于两方面,一是得拥有执行权限,二是里面的语言代码要编写正确。对文件来讲,执行权限是其最高
33、权限,所以新建面,一是得拥有执行权限,二是里面的语言代码要编写正确。对文件来讲,执行权限是其最高权限,所以新建一个文件的默认权限一般为一个文件的默认权限一般为644644,是没有执行权限的。,是没有执行权限的。 r r(读):(读):w w(写):(写):x x(执行):(执行):三、基本权限的含义三、基本权限的含义任务任务三三 掌握权限掌握权限管理命令管理命令2 2、权限对、权限对目录目录的作用的作用 对目录有读权限,代表可以查看目录下的内容,也就是说可以对目录执行对目录有读权限,代表可以查看目录下的内容,也就是说可以对目录执行lsls命令,查看目录下有哪些子文件和子目录。注意:对目录来讲,
34、如果只赋予只读权限,命令,查看目录下有哪些子文件和子目录。注意:对目录来讲,如果只赋予只读权限,实际上是不可以使用的,是没有实际意义的权限,后面的实验会证明这一点。实际上是不可以使用的,是没有实际意义的权限,后面的实验会证明这一点。 对目录有写权限,代表可以修改目录下的数据,就是说可以在目录下执行对目录有写权限,代表可以修改目录下的数据,就是说可以在目录下执行touchtouch、rmrm、cpcp、mvmv等增、删、复制和移动命令。对目录来说,写权限是最高权限,所以等增、删、复制和移动命令。对目录来说,写权限是最高权限,所以新建一个目录的默认权限一般是新建一个目录的默认权限一般是755755
35、,所属组和其他人默认是没有写权限的,就是这个道,所属组和其他人默认是没有写权限的,就是这个道理。理。 目录是不能执行的,对目录有执行权限,代表可以进入目录,也就是说目录是不能执行的,对目录有执行权限,代表可以进入目录,也就是说可以对目录执行可以对目录执行cdcd命令,进入目录。命令,进入目录。 r r(读):(读):w w(写):(写):x x(执行):(执行):三、基本权限的含义三、基本权限的含义任务任务三三 掌握权限掌握权限管理命令管理命令3 3、综合实例综合实例 为了更直观形象的理解权限对于目录和文件的作用,我们来做一个系统试验,试验前为了更直观形象的理解权限对于目录和文件的作用,我们来
36、做一个系统试验,试验前先补充几点知识:先补充几点知识: (1 1)我们做试验不能用)我们做试验不能用rootroot用户来做,因为对用户来做,因为对LinuxLinux来讲,来讲,rootroot为超级用户,就算没有任何权限,为超级用户,就算没有任何权限,rootroot用用户依然可以执行全部的操作。户依然可以执行全部的操作。 (2 2)既然我们做试验要用到普通用户,我们得先建一个普通用户,这部分知识后面会有详细介绍,这里大)既然我们做试验要用到普通用户,我们得先建一个普通用户,这部分知识后面会有详细介绍,这里大家只需照着命令操作即可。添加用户命令为家只需照着命令操作即可。添加用户命令为“us
37、eradd “useradd 用户名用户名”,更改用户密码命令为,更改用户密码命令为“passwd “passwd 用户名用户名”,再,再输入两次密码确认即可。输入两次密码确认即可。 (3 3)因为只有)因为只有rootroot用户才能修改文件的权限,所以实验中会在用户才能修改文件的权限,所以实验中会在rootroot用户和普通用户中来回切换,切换用户用户和普通用户中来回切换,切换用户的命令为的命令为“su - “su - 用户名用户名”,由普通用户切换回,由普通用户切换回rootroot用户可以执行用户可以执行“exit”“exit”命令。大家要时刻注意每条命令执行命令。大家要时刻注意每条命
38、令执行时的用户身份,并明白其中的原因。时的用户身份,并明白其中的原因。 该试验的基本思路为先将测试文件和测试目录的权限设为最低,再逐渐放大权限,用普通用户来验证不同该试验的基本思路为先将测试文件和测试目录的权限设为最低,再逐渐放大权限,用普通用户来验证不同的权限对于文件和目录体现出来的实际效果。【过程略】的权限对于文件和目录体现出来的实际效果。【过程略】 四、所有者和所属组命令四、所有者和所属组命令chown命令命令任务任务三三 掌握权限掌握权限管理命令管理命令1 1、命令功能命令功能 chown chown是用来修改文件和目录的所有者和所属组的命令。是用来修改文件和目录的所有者和所属组的命令
39、。2 2、命令格式命令格式 rootMASTER # chown rootMASTER # chown 选项选项 所有者所有者: :所属组所属组 文件或目录文件或目录 选项:选项: -R -R:递归设置:递归设置 四、所有者和所属组命令四、所有者和所属组命令chown命令命令任务任务三三 掌握权限掌握权限管理命令管理命令3 3、常见用法常见用法修改文件的所有者修改文件的所有者 什么时候需要修改文件所有者呢?比方说某个普通用户需要对某个文件拥有最高权限什么时候需要修改文件所有者呢?比方说某个普通用户需要对某个文件拥有最高权限的时候,一种做法是将文件的其他人权限设置成最高权限,但这样做是及其不安全
40、的,因的时候,一种做法是将文件的其他人权限设置成最高权限,但这样做是及其不安全的,因为不止该用户对该文件拥有了最高权限,每一个陌生人都都对该文件拥有了最高权限,都为不止该用户对该文件拥有了最高权限,每一个陌生人都都对该文件拥有了最高权限,都可以对文件进行随意的操作,想想都可怕。那么这时候最好的做法就是修改文件的所有者,可以对文件进行随意的操作,想想都可怕。那么这时候最好的做法就是修改文件的所有者,即将文件的所有者改成该普通用户,因为一般来讲所有者对文件都是拥有最高权限的,这即将文件的所有者改成该普通用户,因为一般来讲所有者对文件都是拥有最高权限的,这样即满足了该用户的要求,又能保证其他人不能随
41、意操作该文件。例如:样即满足了该用户的要求,又能保证其他人不能随意操作该文件。例如: rootMASTER # ls -l test rootMASTER # ls -l test -rw-r-r- 1 root root 0 2-rw-r-r- 1 root root 0 2月月 19 15:25 test 19 15:25 test# # 文件的所有者是文件的所有者是rootroot用户,普通用户对这个文件相当于其他人,只有只读权限用户,普通用户对这个文件相当于其他人,只有只读权限 rootMASTER # chown hels test rootMASTER # chown hels t
42、est # # 更改文件的所有者为更改文件的所有者为helshels用户,用户,这样这样helshels变成了该文件的所有者,从而对该文件就拥有了读写权限了变成了该文件的所有者,从而对该文件就拥有了读写权限了 四、所有者和所属组命令四、所有者和所属组命令chown命令命令任务任务三三 掌握权限掌握权限管理命令管理命令3 3、常见用法常见用法修改文件的修改文件的所属组所属组 chown chown命令不仅可以修改文件的所有者,还可以修改文件的所属组。例如:命令不仅可以修改文件的所有者,还可以修改文件的所属组。例如: rootMASTER # chown zhangsan:zhangsan tes
43、t rootMASTER # chown zhangsan:zhangsan test # # 同时修改文件的所有者和所属组,中间用同时修改文件的所有者和所属组,中间用“:”“:”隔开,也可以用隔开,也可以用“.”“.”代替。代替。 rootMASTER # ls -l test rootMASTER # ls -l test -rw-r-r- 1 -rw-r-r- 1 0 2 0 2月月 19 15:25 test 19 15:25 test# # 文件的所有者和所属组都发生了改变文件的所有者和所属组都发生了改变 zhangsan zhangsanzhangsan zhangsan四、所有者
44、和所属组命令四、所有者和所属组命令chown命令命令任务任务三三 掌握权限掌握权限管理命令管理命令3 3、常见用法常见用法普通用户修改权限普通用户修改权限 前面已经讲过,超级用户可以修改任何文件的权限,那么普通用户能否修改文件权限前面已经讲过,超级用户可以修改任何文件的权限,那么普通用户能否修改文件权限呢,答案是肯定的,只是普通用户只能修改所有者为本人的文件的权限。例如:呢,答案是肯定的,只是普通用户只能修改所有者为本人的文件的权限。例如: rootMASTER hels# ls -l test rootMASTER hels# ls -l test -rw-r-r- 1 root root
45、0 2-rw-r-r- 1 root root 0 2月月 19 15:43 test 19 15:43 test# # 测试文件的所有者为测试文件的所有者为rootroot用户用户 rootMASTER hels# su - hels rootMASTER hels# su - hels /切换为普通用户切换为普通用户helshels helsMASTER $ chmod 755 test helsMASTER $ chmod 755 test chmod: chmod: 更改更改test test 的权限的权限: : 不允许的操作不允许的操作# # 普通用户普通用户helshels更改文件
46、更改文件testtest的权限没成功,因为的权限没成功,因为helshels不是文件的所有者不是文件的所有者 四、所有者和所属组命令四、所有者和所属组命令chown命令命令任务任务三三 掌握权限掌握权限管理命令管理命令3 3、常见用法常见用法普通用户修改权限普通用户修改权限 helsMASTER $ exit helsMASTER $ exit # #返回到返回到rootroot用户用户logoutlogout rootMASTER hels# chown hels test rootMASTER hels# chown hels test # #更改文件所有者为更改文件所有者为helshel
47、s rootMASTER hels# su - hels rootMASTER hels# su - hels # #切换为普通用户切换为普通用户helshels helsMASTER $ chmod 755 test helsMASTER $ chmod 755 test # # 更改文件的权限为更改文件的权限为755755,执行成功,执行成功 helsMASTER $ ls -l test helsMASTER $ ls -l test - - 1 1 root 0 2 root 0 2月月 19 15:43 test 19 15:43 test# # 因为文件的所有者已变成因为文件的所有
48、者已变成helshels用户,所以能成功修改自己文件的权限用户,所以能成功修改自己文件的权限 rwxr-xr-xrwxr-xr-xhelshels四、所有者和所属组命令四、所有者和所属组命令chgrp命令命令任务任务三三 掌握权限掌握权限管理命令管理命令1 1、命令功能命令功能 chgrp chgrp命令是用来修改文件和目录的所属组的命令。命令是用来修改文件和目录的所属组的命令。2 2、命令格式命令格式 rootMASTER # chgrp rootMASTER # chgrp 所属组所属组 文件或目录文件或目录 四、所有者和所属组命令四、所有者和所属组命令chgrp命令命令任务任务三三 掌握
49、权限掌握权限管理命令管理命令3 3、常见用法常见用法 chgrp chgrp命令比较简单,就是用于单独修改文件或者目录的所属组。例如:命令比较简单,就是用于单独修改文件或者目录的所属组。例如: rootMASTER # ls -l test1 rootMASTER # ls -l test1 /查看文件查看文件test1test1的所属组为的所属组为rootroot组组-rw-r-r- 1 root root 0 2-rw-r-r- 1 root root 0 2月月 19 15:51 test1 19 15:51 test1 rootMASTER # chgrp hels test1 roo
50、tMASTER # chgrp hels test1 /更改文件的所属组为更改文件的所属组为helshels组组 rootMASTER # ls -l test1rootMASTER # ls -l test1-rw-r-r- 1 root -rw-r-r- 1 root 0 2 0 2月月 19 15:51 test1 19 15:51 test1 这里大家可能会有一点疑问,这里大家可能会有一点疑问,helshels不是一个用户吗,怎么又成一个组了呢?这是不是一个用户吗,怎么又成一个组了呢?这是LinuxLinux和和WindowsWindows的一个区别,对于的一个区别,对于Windows
51、Windows,新建的用户都属于,新建的用户都属于usersusers这个组,但这个组,但LinuxLinux中,中,每新建一个用户,都会自动地同时生成一个与用户名同名的组,也称作用户的初始组,这每新建一个用户,都会自动地同时生成一个与用户名同名的组,也称作用户的初始组,这一点大家先记住即可,后面学到用户与用户组管理内容时自然就明白了。一点大家先记住即可,后面学到用户与用户组管理内容时自然就明白了。 helshels五、五、umask默认权限默认权限任务任务三三 掌握权限掌握权限管理命令管理命令 大家有没有思考过一个问题,为什么大家有没有思考过一个问题,为什么LinuxLinux中新建一个文件
52、的默认权限都是中新建一个文件的默认权限都是644644,新建,新建一个目录的默认权限又都是一个目录的默认权限又都是755755,而不是其他的什么权限呢?这就是由,而不是其他的什么权限呢?这就是由umaskumask默认权限决定默认权限决定的。首先我们来学习如何查看的。首先我们来学习如何查看umaskumask默认权限的值,命令如下:默认权限的值,命令如下: rootMASTER # umaskrootMASTER # umask00220022# umask# umask的值是用八进制数值来显示的的值是用八进制数值来显示的 rootMASTER # umask -S rootMASTER #
53、umask -S /用字母来表示文件和目录的初始权限用字母来表示文件和目录的初始权限u=rwx,g=rx,o=rxu=rwx,g=rx,o=rx 我们查看的我们查看的umaskumask权限值为权限值为“0022”“0022”,一共有,一共有4 4位,其中第一位位,其中第一位“0”“0”代表文件的特殊代表文件的特殊权限(如权限(如SetUidSetUid、SetGIDSetGID、Sticky BITSticky BIT等),特殊权限本书不做深入讨论,后三位等),特殊权限本书不做深入讨论,后三位“022”“022”是真正的是真正的umaskumask默认权限。默认权限。 五、五、umask默认
54、权限默认权限任务任务三三 掌握权限掌握权限管理命令管理命令1 1、umaskumask默认权限的计算方法默认权限的计算方法 在学习在学习umaskumask默认权限的计算方法之前,我们要先了解新建文件和目录的默认最大权默认权限的计算方法之前,我们要先了解新建文件和目录的默认最大权限。通过前面对权限的学习,我们知道了对文件来讲,执行权限为最高权限,因为执行权限。通过前面对权限的学习,我们知道了对文件来讲,执行权限为最高权限,因为执行权限对文件来讲是比较危险的,赋予前需要慎重考虑,所以对文件来讲其默认的最高权限是限对文件来讲是比较危险的,赋予前需要慎重考虑,所以对文件来讲其默认的最高权限是没有执行
55、权限的,最多只能为没有执行权限的,最多只能为666666,即都具备读写权限。对于目录来讲,执行权限仅仅代,即都具备读写权限。对于目录来讲,执行权限仅仅代表能够进入目录,是没有什么危险的,所以新建目录的默认最高权限是表能够进入目录,是没有什么危险的,所以新建目录的默认最高权限是777777。 接下来介绍接下来介绍umaskumask默认权限与新建文件及目录的默认权限的关系。计算方法是先将文默认权限与新建文件及目录的默认权限的关系。计算方法是先将文件和目录的默认最高权限变为字母,对于文件是件和目录的默认最高权限变为字母,对于文件是666666,换算成字母就是,换算成字母就是“-rw-rw-rw-”
56、“-rw-rw-rw-”,而目录是而目录是777777,换算成字母就是,换算成字母就是“drwxrwxrwx”“drwxrwxrwx”。再将。再将umaskumask默认权限值也换算成字母,默认权限值也换算成字母,以以022022为例,换算成字母就是为例,换算成字母就是“-w-w-”“-w-w-”。最后再将两个字母相减,对于文件来说,。最后再将两个字母相减,对于文件来说,就是(就是(-rw-rw-rw-rw-rw-rw-)- -(-w-w-w-w-)= =(-rw-r-r-rw-r-r-),即为),即为644644;对于目录来说,就是;对于目录来说,就是(drwxrwxrwxdrwxrwxrw
57、x)- -(-w-w-w-w-)= =(drwxr-xr-xdrwxr-xr-x),即为),即为755755。 五、五、umask默认权限默认权限任务任务三三 掌握权限掌握权限管理命令管理命令2 2、umaskumask默认权限的修改方法默认权限的修改方法 修改修改umaskumask默认权限最简单的方法是直接用命令修改,如:默认权限最简单的方法是直接用命令修改,如: rootMASTER # umask 033 rootMASTER # umask 033 /将将umaskumask默认权限修改为默认权限修改为033033 但是这样的修改只是临时生效的,一旦重启或者重新登录就会失效。如果要使
58、其永久但是这样的修改只是临时生效的,一旦重启或者重新登录就会失效。如果要使其永久生效,需要修改对应的配置文件生效,需要修改对应的配置文件/etc/profile/etc/profile。例如:。例如: rootMASTER # vi /etc/profilerootMASTER # vi /etc/profileif $UID -gt 199 & id -gn = id -un ; thenif $UID -gt 199 & id -gn = id -un ; thenumask 002 umask 002 /如果如果UIDUID大于大于199199(普通用户),则使用此(普通
59、用户),则使用此umaskumask值值elseelseumask 022 umask 022 /否则,即如果否则,即如果UIDUID小于小于199199(超级用户),则使用此(超级用户),则使用此umaskumask的值的值fifi.省略部分内容省略部分内容. 六六、ACL权限权限任务任务三三 掌握权限掌握权限管理命令管理命令 在前面介绍基本权限的时候,我们说用户和文件的关系只有三种,所有者、所属组和在前面介绍基本权限的时候,我们说用户和文件的关系只有三种,所有者、所属组和其他人,每种用户拥有读(其他人,每种用户拥有读(r r)、写()、写(w w)和执行()和执行(x x)三种权限。但是实
60、际工作中,仅有)三种权限。但是实际工作中,仅有这三种权限是不够的,这里再来介绍一种非常典型的这三种权限是不够的,这里再来介绍一种非常典型的ACLACL权限。权限。 ACL ACL是是Access Control ListAccess Control List(访问控制列表)的缩写,在(访问控制列表)的缩写,在LinuxLinux中,中,ACLACL用于设定特定用于设定特定用户对特定文件的权限。举个例子:我担任某个班级的一名课程,资源放在用户对特定文件的权限。举个例子:我担任某个班级的一名课程,资源放在/resource/resource目目录下,我是该目录的所有者,必然拥有录下,我是该目录的所有者,必然拥有r
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论