粘滞位(SBIT)

一.什么是粘滞位?
粘滞位(stickybit),又称黏着位,是Linux文件系统权限的一个特殊权限(有三个:SUID,SGID,SBIT)。最常见的用法是在目录(只能是目录,文件无效)上设置粘滞位,如此一来,只有目录内文件的所有者或者root才可以删除或移动文件。如果不为目录设置粘滞位,任何具有该目录写和执行的用户都可以删除和移动其中的文件。实际应用中,粘滞位一般用于/tmp目录(在Linux系统中较典型的例子就是“/tmp”、 “/var/tmp”?录。这两个目录作为Linux系统的临时文件夹,权限为“rwxrwxrwx”,即允许任意用户、任意程序在该目录中进行创建、删除、移动文件或目录等操作),以防普通用户删除或移动其他用户的文件。
下面我来举个案例,大家看一看如果你对你创建的目录文件不加以保护,会出现什么后果。
1,以root登录系统,进入/tmp中;
2,mkdir mydir ,并且设其权限为777;
3,cd mydir ,并创建文件file;
4,以普通用户登录,并进入/mydir;
5,rm file,尝试删除这个目录文件;
这里写图片描述

           图1,文件被其他用户删除(未设置粘滞位)

上面这个案例给我们敲响了警钟,虽然该文件的权限是644,其他用户不能对其进行除了读以外其他任何操作,但是其他用户(上面例子指普通用户)还是删除了它。如果你想你创建的目录文件不想被其他用户删除,你就需要用粘滞位来保护你创建的目录文件不被操作。
二,如何设置粘滞位?
在上面案例的基础之上,我们来在原有的mydir(权限为777)目录下,新创建一个file文件,并通过“chmod o+t mydir”将mydir设置成粘滞位,进入普通用户模式下,再次对file进行删除操作,结果你会发现删除不了。见图2:

这里写图片描述

           图2,设置粘滞位后的文件不会被删除

这里再补充几点
1,与之对应的去除粘滞位指令是“chmod o-t file”。见图3:

这里写图片描述

                 图3,去除粘滞位指令

2,也可以通过“chmod 1xxx test”指令设置粘滞位。见图4:

这里写图片描述

                  图4,设置粘滞位

3,与之对应的去除粘滞位指令是“chmod xxx test”。见图5:

这里写图片描述

                    图5,去除粘滞位

4,如果其他人无x(可执行)权限时,设置粘滞位后,最后一位出现的是大写的‘T’,它代表的就是“空的”。见图6:

这里写图片描述

                 图6,大写‘T’代表为空

5, 当用户在该目录下创建文件或目录时,仅有自己和root才有权删除该文件。

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值