几个特殊权限(set uid , set gid , sticky bit),软连接,硬链接

来源:互联网 发布:淘宝如何自创服装品牌 编辑:程序博客网 时间:2024/05/29 18:47

set uid

set uid : 作用于二进制可执行文件,功能:使有该权限的文件在执行阶段临时拥有文件所有者的权限
二进制可执行文件:一般的,命令所在的文件是二进制可执行文件。如:ls 命令所在的文件/usr/bin/ls
这里写图片描述
如果不认为设置,基本上我们系统只有一个文件是有set uid 这个权限的。就是passwd 命令所在的文件/usr/bin/passwd
[root@shuai-01 ~]# ls -l /usr/bin/passwd

-rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd
这里写图片描述
怎么设置一个set uid 权限
给ls 命令所在的文件/usr/bin/ls加个set uid 权限
[root@shuai-01 ~]# chmod u+s /usr/bin/ls
这里写图片描述
去掉set uid 权限
[root@shuai-01 ~]# chmod u-s /usr/bin/ls

只有root用户才能更改这几个特殊权限

set gid

set gid : 作用于文件上,使有该权限的文件在执行阶段临时拥有文件所属组的权限。作用于目录上,有这个权限后,任何用户在这个目录下创建的文件或目录都具有和该目录的所属组一样。
设置一个set gid 权限
给deng目录加一个set gid 权限
[root@shuai-01 ~]# chmod g+s deng

[root@shuai-01 ~]# ls -ld deng
drwxrwsr-x. 2 root root 6 10月 25 23:30 deng
这里写图片描述
去掉set gid 权限
[root@shuai-01 ~]# chmod g-s deng

stick_bit

stick_bit:防删除位,防止别的用户删除自己的文件
一个文件或目录能被删除,不是取决于该文件和目录本身是否有可写权限,而是取决于上一级目录(父目录)是否有可写权限
设置stick_bit权限:
[root@shuai-01 ~]# chmod o+t deng

软连接

软连接:类似于一种快捷方式,能占用少的存储空间,当一个文件或目录在不同的地方被多次使用时,用软连接能更方便的使用。(即支持对文件,又支持对目录,还能跨分区)
这里写图片描述
做一个软连接:
将/root/deng/shuai目录连接到/tmp/shuai目录下
[root@shuai-01 ~]# ln -s /tmp/shuai/ /root/deng/shuai/
这里写图片描述
案例:
一个文件/var/shuai.log在不停的写,导致/var目录空间不足,服务不能断,写不能停。这时就只有将/var/shuai.log文件复制到另一大分区下,删除这个目录,在做一个软连接过来

硬链接

对文件做硬链接,使用同一个iNode号,说白了,就是两相同的文件。只能对文件做硬链接(并且在同一分区)
这里写图片描述
做硬链接:
将1.txt 和2.txt 做硬链接
[root@shuai-01 ~]# ln 1.txt 2.txt
这里写图片描述
这是文件具有相同的iNode号