SET位权限多用于给可执行的程序或脚本文件进行设置,其中SUID表示对属主用户增加SET位权限,SGID表示对属组内的用户增加SET位权限。
执行文件被设置了SUID、SGID权限后,任何用户在执行该文件时,将获得该文件属主、属组账号对应的身份。


合理利用SUID、SGID设置SET位权限,可以在确保安全性的同时为Linux系统的管理和使用带来方便。


例如,Linux系统中passwd命令的程序文件被设置了SUID权限,正因为如此,尽管普通用户无法直接修改“/etc/shadow”文件,但仍然可以通过passwd命令修改自己的登陆密码,从而以root用户的身份间接更新shadow文件中的密码信息。


另外,若没有确切的应用需要,不要轻易为可执行文件设置SET位权限,特别是对于那些属主、属组是root的执行程序,使用SET位权限时更应该慎重。


例如,若为vim编辑器程序设置SUID权限,将导致普通用户也可以使用vim编辑器修改系统中的任何配置文件。


粘滞位主要用于为目录设置特殊的附加权限,当目录被设置了粘滞位权限后,即便用户对该目录有写入权限,也不能删除该目录中其他用户的文件数据。
典型的例子就是"/tmp"、"/var/"目录。