Linux粘滞位(粘着位)

本文介绍了Linux系统中文件和目录权限的区别,并详细解释了粘滞位(Stickybit)的概念及应用。通过设置粘滞位,只有文件所有者或root用户才能删除或移动文件,增强了/tmp等公共目录的安全性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在介绍粘滞位之前,先来介绍一下文件权限和目录权限的区别。

我们知道在linux系统中文件(文件和目录)的权限有三种(r,w,x),而这三种权限对文件和目录的意义有所不同。

权限对文件

1.  r (read) :可读取该文件的实际内容;

2.  w(write):可以编辑,新增或者修改该文件的内容(但不含删除该文件);
3.  x(execute):代表该文件可以被系统执行
对于文件的r ,w, x来说,主要针对的“文件的内容”而言,与文件名的存在与否没有关系;
权限对目录
1.  r (read):表示具有读取目录结构列表的权限,不如可以用ls查看一下目录有什么
2.  w(write):而写的权限对目录来说就显得很强大了,代表具有更改该目录结构列表的权限。
                               新建文件或目录
                               删除文件或目录(不论文件的权限是什  么)
                               对文件或目录重命名
                               移动文件或目录等    
3.  x(execute):目录的X权限代表的是用户能否进入该目录称为工作目录。拥有此权限,就可以cd进去,否则,将不能进入目录内部。

有了前面的背景介绍,我们再来看粘滞位的概念和使用:
               粘滞位(Stickybit),或粘着位。最常见的用法在目录上设置粘滞位,如此以来,只有目录内文件的所有者或者root才可以删除或移动该文件。如果不为目录设置粘滞位,任何具有该目录写和执行权限的用户都可以删除和移动其中的文件。在我们系统中,粘滞位一般用于/tmp目录,以防止普通用户删除或移动其他用户的文件。
一个目录具有粘滞位,则在other的X位会表现为 t,或者T.大小写的区别在于,原来x位上有x权限,有了粘滞位则表现为t.否则,表现为T。

(1)查看/tmp权限可以发现。确实有一个t位出现。
实践是检验真理的唯一标准。
(2)用root身份新建一个目录名为file的目录,并用参数-m 为它指定权限为777(可读,可写,可执行),并且所属者和所属组都是root。接着该目录下新建两个文件,权限为默认。
,因为other对该目录具有w权限,所以可以删除目录内容。

(3)切换到名为god的普通用户,尝试去删除刚刚在root下新建的两个文件test1 和 test2。经过实践,我们发现可以删除。

(4)我们回到root用户下,给刚才新建的目录file,加上粘滞位(命令:chmod o+t  .)再次查看目录,发现other的x权限变为t。说明添加粘滞位成功。依旧在该目录下重新新建两个文件 test1 和 test2。

(5)再次尝试删除,刚刚新建的文件test1 和 test2。 结果错误输出为”不允许的操作“。可以证实粘滞位给其它用户带来的安全限制。
为了进一步证实文件所有者和root依旧可以删除。用root对该文件进行删除操作。结果发现,依旧可以正常删除。



总结以上内容:即当一个目录被设置为"粘滞位"(用chmod a+t),则该目录下的文件只能由  
一、超级管理员(root)删除或移动  
二、该目录或文件的所有者删除 或移动
注意:
(1)虽然目录有了粘滞位,other用户不能对该目录的文件进行删除或者移动操作,但是other对该文件由w权限,还是可以进行修改文件内容的。
(2)粘滞位只对目录有效,对文件无效。(由开始介绍的权限对文件和目录的作用可以知道)





评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值