我们对linux 文件和目录的读写执行(rwx)权限应该都比较熟悉了,在这普通权限外还有3个特殊权限SUID(4)、SGID(2)、Sticky(1)
这3个特殊的权限分别作用于文件或者目录的 拥有者、组、其他用户的x权限位上,如果对应的权限为设置了x权限那么分别用小写的s、s、t表示否则用S、S、T表示。
SUID权限的作用是使文件的执行者拥有文件的所有者的权限。 比如你的一个可执行文件需要绑定80端口,然而在liux环境下只有root用户才可以绑定80端口,也就是说除非你有root口令你才可以执行80端口的绑定。那么在没有root口令的情况下如果来执行80 端口的绑定? SUID权限就可以解决这个问题。
chown root exefile
chmod 4777 exefile
注意 suid 只作用于可执行文件对目录普通文件以及shell不生效虽然你可以为这些文件加上这个权限位。
SGID权限可以作用于目录和文件。作用于目录时,在该目录下建立的所有文件和目录的group都会是该目录的group;作用于文件时,则不论使用者是谁,在执行该程序的时候,他的有效群组将会变成该程序的群组所有人 该文件就可以任意存取整个用户组所能使用的系统资源。
chmod 2777 xxxx
Sticky权限仅对目录有效如果一个目录设置了本权限位那么这个目录下的文件和目录只有root与文件的所有者可以删除。 chomod 1777 xDir rwx对目录的意义:r具有浏览目录的权限,w具有删除、移动目录内文件的权限,x具有进入目录的权限。