1、LINUX文件权限最新PPT课件4.3 文件的权限?文件的访问权限文件的访问权限?LinuxLinux系统中的每个文件和目录都有访问许可权限,这是加在文系统中的每个文件和目录都有访问许可权限,这是加在文件上的一个数据结构件上的一个数据结构?访问权限规定三种不同类型的用户:访问权限规定三种不同类型的用户:文件属主(文件属主(ownerowner):文件的所有者,称为属主。):文件的所有者,称为属主。同组用户(同组用户(groupgroup):文件属组的同组用户):文件属组的同组用户可以访问系统的其他用户(可以访问系统的其他用户(others)?访问权限规定三种访问文件或目录的方式:访问权限规定三
2、种访问文件或目录的方式:读(读(r r):允许读取文件内容或者列目录):允许读取文件内容或者列目录?权限范围的表示法如下:权限范围的表示法如下:u:User,即文件或目录的拥有者。,即文件或目录的拥有者。g:Group,即文件或目录的所属群组。,即文件或目录的所属群组。o:Other,除了文件或目录拥有者或所属群组之外,其,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围。他用户皆属于这个范围。a:All,即全部的用户,包含拥有者,所属群组以及其他,即全部的用户,包含拥有者,所属群组以及其他用户。用户。除了可以用除了可以用字母字母来表示文件或目录的权限外,还可用来表示文件或目录的权限
3、外,还可用字字代号来表示,他们之间的关系如下:代号来表示,他们之间的关系如下:r:读取权限,数字代号为:读取权限,数字代号为“4”。查看文件的权限属性#ls-l install.log-rw-r-r-1 root root 26195 Dec 17 10:42 install.log权限表示文件权限(-rw-r-r-)权限项字符表示读(r)写执行读写执行(w)(x)(r)(w)(x)使用chmod命令更改文件属性?chmod命令用于更改文件对于某类用户的操作权限chmod ugoa.+-=rwx FILE.属性操作符+增加权限-减少权限设置权限的对象,可以是用户、组、其他人或所有人?2、chm
4、od 命令格式:chmod 选项 文件和目录功能:改变或设置文件或目录的存取权限例如:将文件file1的权限改为所有用户都可以执行rootlocalhost/root#chmod a+x file1将文件file1 的权限重新设置为文件主可以读和执行,组用户可以执行,其他用户无权访问字母形式修改文件权限设置实例?使用使用chmod命令设置文件权限命令设置文件权限?查看文件权限查看文件权限$ls-l afile-rw-rw-r-1 st01 class1 0 Apr 3 16:52 afile增加文件属主增加文件属主st01的执行权限(的执行权限(x)$chmod u+x afile?去除文件属
5、组去除文件属组class1的写权限(的写权限(w)?数字形式修改权限数字形式即由三位八进制数字组成,其命令格式为:?chmod 八进制模式八进制模式 文件名文件名chmod 641 f1 等价于等价于 chmod u+wr,g+r,o+x?文件的默认权限 umaskrootlocalhost test#umask 0022rootlocalhost test#umask-Su=rwx,g=rx,o=rxumask指定目前用户在新建文件和目录时候的权限默认值默认情况下用户创建文件则没有可执行的权限-rw-rw-rw 默认情况下用户创建目录权限是777-rwx-rwx-rwx 文件的特殊权限?SU
6、ID、SGID和Sticky的表示suid/sgid程序程序程序的程序的t属性属性目录的目录的s属性属性目录的目录的T属性属性文件特殊权限SUID/SGID/Sticky Bit在 Linux 中,文件的权限除了 r、w、x,还有 s、t 这 2 个权限。(which passwd 查找命令的完整文件名)rootlocalhost test#ls-ld/tmp/;ls-l/usr/bin/passwddrwxrwxrwt 18 root root 4096 04-23 08:35/tmp/SUID=Set UID?SUID 权限的含义:是为了让一般用户在执行某些程序的时候,在程序的运行期间,暂
7、时获得该程序拥有者的权限分析?student 要更改自己的密码:#passwd分析:?student 在执行 passwd 修改自己的密码时,其修改的密码,最终是需要保存到/etc/shadow 文件的权限是-r-,它的拥有者是限中,也只有 root 可以“强制”存储,其他用户连看都不行。分析?这就是因为有 s 权限的存在。当 s 权限在 拥有者 的 权限位上时,即如这样时,称为 SUID。SUID 即 Set UID,UID 指的是拥有者的的这个程序(/usr/bin/passwd)的拥有者(?跟踪 SUID 的执行?关于 SUID 执行的条件:?Set UID 的权限设置值,仅对二进制文件
8、有效。进程操作者,必须拥有该二进制文件的可执行权限(当进程操作者执行具有 SUID 的二进制文件时,在该二进制文件所触发的进程中(即在执行期间),该进程的有效用户(effective user)为该二进制文件的拥有者。跟踪 SUID 的执行?如此说来,SUID/SGID 的权限比较“可怕”。该如何查询整个系统的 SUID/SGID 使用 find 命令即可:#find/-perm+6000?0 表示至少为无的权限6 代表 拥有者 和 所属用户组 的 s 权限位+代表查 拥有者 or 所属用户组 的 s SGID=Set GID?进一步而言,如果 s 权限在用户组的权限位上时,即如-r-x-s-
9、x 这样时,称为 Set GIDSGID 可以用在两个方面:?文件:如果 SGID 设置在二进制文件上,则不论用户是谁,在执行该程序的时候,它的有效用户组(将会变成该程序的用户组所有者(group id原来的组)Sticky Bit?Sticky Bit(SBit)当前只针对目录有效,对文件没有效果。其对目录的作用是:?在具有 SBit 的目录下,用户若在该目录下具有限,则当用户在该目录下建立文件或目录时,只有文件拥有者与 root 才有权力删除。?换句话讲:当 student 用户属于 A 目录的 group 示例?/tmp 目录本身的权限就是“drwxrwxrwt”的权限下,任何人都可以在
10、/tmp 内新增或修改文件,但仅有该文件或目录的建立者与 root 的目录或文件可以这样做个简单测试:?以 root 登录系统,并且进入/tmp 中touch test,并且更改 test 权限成为SUID/SGID/SBIT 权限设置?如何设置文件或目录使其具有 SUID/SGID/SBIT 限呢?使用数字模式的权限更改方式:?在“3个数字”之前,再加上一个数字4 为 SUID2 为 SGID1 为 Sticky Bit示例?假设要将一个文件的权限设置为“rwsr-xr-s 在用户权限中,所以是 SUID因此,在755之前,还要加上 4,即:#chmod 4755 test此外,还有大 S、
11、大 T 如果文件以前有x的权限则加上suid如果文件以前没有x的权限则加上suid示例?cd/tmptouch testchmod 4755 test;ls-l testchmod 6755 test;ls-l testchmod 1755 test;ls-l testChmod 2666 test;ls-l testChmod 3666 test;ls-l test4.4 文件的链接文件的链接?硬链接?不带选项,ln命令创建硬链接。在另外的目录或本目录中增加目标文件的一个目录项,一个文件就登记在多个目录中硬链接的格式:ln 目标文件名 链接名可以把硬链接当成源文件的副本,它显示跟源文件一样的大小但事实上却不占任何空间。4.4 文件的链接文件的链接?硬链接?不带选项,ln命令创建硬链接。在另外的目录或本目录中增加目标文件的一个目录项,一个文件就登记在多个目录中?软链接(符号链接)?用“ln-s”命令建立符号链接时,最好源文件用绝对路径名,这样可以在任何工作目录下进行
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。