摘要:2.18 特殊权限set_uid
2.19 特殊权限set_gid
2.20 特殊权限stick_bit
2.21 软链接文件
2.22 硬连接文件
一 特殊权限set_uid
1.set_uid权限
作用在所有者上,如/usr/bin/passwd 文件的权限-rwsr-xr-x,其中的s就表示set_uid权限
2.set_uid作用
保证非所有者用户在操作带有s权限的命令时临时拥有该命令所有者的身份;给一个文件设置s权限时前提需要保证此文件是一个二进制文件,而且是一个可执行的文件
3. 如何给二进制的命令文件授予s权限
1)先将用户切换到非root用户,此时可以看到访问root目录的权限不够
2)将用户切换回root用户,给二进制文件授予s权限
3)再将用户切换到非root用户,可以发现此用户可以临时访问/root/目录
4)当使用# chmod u=rws [文件] 来修改[文件]权限时,会使这个文件缺失x权限,同时查看这个文件的权限时会发现其权限是用大写S表示的
4. 目录授予s权限
给目录设置s权限无意义
二 特殊权限set_gid
1.给普通文件加上set_gid权限
作用在所属组用户权限上,作用在所属组上的s权限,其对应的组内用户也拥有s权限,作用跟set_uid一样
#chmod g+s [文件] //
2.给目录所属组加s权限
# chmod g+s [目录]
正常情况下,root用户去创建一个文件或目录时,它的所有者和所属组都为root,但当给一个目录设置了set_gid后,再在这个目录下创建子文件或子目录时,这个子文件或子目录的所属组会跟其父级保持一致,也就是跟刚才创建set_gid这个权限的目录保持一致
三 特殊权限stick_bit
1.stick_bit
可以理解为防删除位,文件是否可以被某用户删除,注意取决于该文件所在的目录是否对该用户具有写权限。如果没有写权限,则这个目录下的所有文件都不能删除,同时也不能添加新的文件。如果希望用户能够添加文件但不能删除该目录下其他用户的文件,则可以对父目录增加该权限。设置该权限后,即使用户对目录具有写权限,也不能删除其他用户的文件
四 软链接文件
1.什么是软链接
类似windows中的快捷方式,在软链接的文件里面存了另外一个文件的路径或者是目录的路径
2.软链接作用
1)节省空间,避免复制文件占用过多空间
2)创建软链接链接文件# ln -s [源文件] [目标文件]
3)创建软链接链接目录## ln -s [源目录] [目标文件]
做软链接尽量使用绝对目录,不要使用相对目录,否则当软链接文件或源文件更改路径后,会导致软链接失效
4)当某个文件占用磁盘空间过大,但又不能直接移动该文件到其他磁盘时,可以先将该文件内容复制到其他磁盘新的文件中,再清空原来文件内容,同时将原来文件软链接到之前接受复制内容的文件上,这时当有新的数据写入该文件时,会直接写入新的文件中
五 硬链接
1.简介
具有相同inode号文件的数量如下图,对目录来说有几个子文件就有几个文件iNode号相同,因此硬链接不支持对目录做硬链接,只支持对文件做硬链接
2.创建硬链接
# ln [源文件][目标文件]
从上图可以看出,硬链接的iNode号与源文件相同,软链接iNode号与源文件不同
如果删除源文件呢?
删除源文件对硬链接无影响,软链接则失效。另外,硬链接与源文件是互为源文件的。
iNode号存的是文件磁盘中存储位置、大小等信息,
硬链接不允许跨分区