特殊权限之sticky-bit

Stick-bit可以理解为防删除位。(防止别人删除自己的文件

一个文件是否可以被某用户删除主要取决于该文件所在目录是否对该用户具有权限。

如果没有写权限,则这个目录下的所有文件都不能被删除同时也不能添加新的文件

如果希望用户能够添加文件同时不能删除该目录下的其他用户的文件,则可以对父目录增加该权限

设置它后,就算用户对目录具有写权限,也不能删除其他用户的文件。

比如/tmp/目录就设置过该权限。

说明:一个文件能否被删除,取决于该文件父目录的权限

给一个文件增加set uid权限,

wKiom1k-NSPD890JAAARtUu1Bgo826.jpg

现在增加一个用户,来测试该权限的作用

wKioL1k-NUWShu4qAAAov2a07rQ596.jpg

rm:无法删除“/tmp/user1.txt":不允许的操作


说明:

一个文件能否被删除,取决于该问件父目录的权限,/tmp/目录时777,任何人都可以写,所以理论上任何人都可以删除/tmp/下的所有文件,但是以上实验题却表明,user2是不可以删除user1的文件的,就是因为/tmp/目录有一个stick bit.

对于这些特殊的权限配置,方法和之前一样

比如我想给一个文件增加一个set uid权限,那么命令为chmod u+s filename,而去掉这个权限为chmod u-s filename.

同理,想设置set gid则为chmod g+s dirname.设置stick bit权限为chmod o+t dirname.