Linux入门:权限管理之粘滞位

来源:互联网 发布:怎么重新注册知乎 编辑:程序博客网 时间:2024/06/06 00:30

关于linux下粘滞位(sticky位):

        粘滞位(Sticky bit):如果用户对目录有写权限,则可以删除其中的文件和子目录,即使该用户不是这些文件的所有者,而且也没有读或写许可。粘滞位出现可执行许可的位置上,用t表示,设置了该位后,其它用户就不可以删除不属于他的文件和目录。也只能针对⽬录设置,对于⽂件⽆效。则设置了粘滞位后,只有目录内文件的所有者或者root才可以删除或移动该文件。如果不为目录设置粘滞位,任何具有该目录写和执行权限的用户都可以删除和移动其中的文件。

       实际应用中,粘滞位一般用于/tmp目录,以防止普通用户删除或移动其他用户的文件。 在Linux系统中⽐较典型的例⼦就是“/tmp”⽬录。这个⽬录作为Linux系统的临时⽂件夹,权限为“rwxrwxrwt”,即允许任意⽤户、任意程序在该⽬录中进⾏创建、删除、移动⽂件或⼦⽬录等操作。 

       然⽽Linux是一个多用户多任务的操作系统,能够供多个人使用,建立多个账号,试想⼀下,若任意⼀个普通⽤户都能够删除系统服务运⾏中使⽤的临时⽂件,将造成什么结果?粘滞位权限便是针对此种情况设置,当⽬录被设置了粘滞位权限以后,即便⽤户对该⽬录有写⼊权限,也不能删除该⽬录中其他⽤户的⽂件数据,⽽是只有该⽂件的所有者和root⽤户才有权将其删除。设置了粘滞位之后,允许各⽤户在⽬录中任意写⼊、删除数据,但是禁⽌随意删除其他⽤户的数据。设置了粘滞位权限的⽬录,使⽤ls命令查看其属性时,其他⽤户权限处的“x”将变为“t”。但是该目录下的目录不继承该权限,要再设置才可使用。

那么原来的执行标志x到哪里去了呢? 系统是这样规定的, 假如本来在该位上有x, 则这些特别标志 (suid, sgid, sticky) 显示为小写字母 (s, s, t). 否则, 显示为大写字母 (S, S, T) 。

设置目录的粘滞位可以采用chmod 1777 file或者chmod o+t file

取消设置可以采用chmod o-t file

 

 

0 0
原创粉丝点击