【Linux】Linux权限(三)粘滞位
admin
2024-05-03 18:31:16
0

Linux 粘滞位

  • 1.粘滞位使用的背景
  • 2.设置粘滞位指令chmod +t
  • 3.粘滞位总结

1.粘滞位使用的背景

在使用Linux的时候,未来可能会有一些共享目录,被所有的普通用户共享,用来保存普通用户所产生的临时数据。
文件被所有人共享的时候,受权限约束,但是拦不住别人删我的文件。
为什么?
我们知道,当我们拥有对目录进行写文件的权限(w)时,我们就可以删除目录中的文件,而不用在乎被删除的那个文件别人是否拥有写权限。
这样子是非常不合理的。
所以Linux引入了粘滞位。

以下是目录未使用粘滞位,导致目录中的文件可以随意被其他人删除的例子。

[root@localhost ~]# chmod 0777 /home/                #把家目录这个共享目录权限都放开
[root@localhost ~]# ls /home/ -ld 
drwxrwxrwx. 3 root root 4096 9月 19 15:58 /home/      #可以看到权限都放开了
[root@localhost ~]# touch /home/root.c                #在root下创建一个文件
[root@localhost ~]# ls -l /home/                      #列出家目录下的文件列表
总用量 4
-rw-r--r--. 1 root root 0 9月 19 15:58 abc.c         
drwxr-xr-x. 27 litao litao 4096 9月 19 15:53 litao
-rw-r--r--. 1 root root 0 9月 19 15:59 root.c         #注意这个文件是的其他人(other)是没有w权限的
[root@localhost ~]# su - litao                       #切换到普通用户
[litao@localhost ~]$ rm /home/root.c #litao可以删除root创建的文件
rm:是否删除有写保护的普通空文件 "/home/root.c"?y        #可以看到,一个对于其他人(other)来说没有w权限的文件,居然被删掉了,这是不合理的。

2.设置粘滞位指令chmod +t

[root@localhost ~]# chmod +t /home/ # 加上粘滞位
[root@localhost ~]# ls -ld /home/
drwxrwxrwt. 3 root root 4096 9月 19 16:00 /home/
[root@localhost ~]# su - litao
[litao@localhost ~]$ rm /home/abc.c #litao不能删除别人的文件
rm:是否删除有写保护的普通空文件 "/home/abc.c"?y
rm: 无法删除"/home/abc.c": 不允许的操作

可以看到,当我们把家目录设置加上粘滞位后,普通用户之间就不能随意删除别人的文件了。

当我们把目录添加粘滞位后,该目录的最后面的权限会变成t
drwxrwxrwt. 5 root root 4096 Dec 31 22:35 /home/

当一个目录被设置为"粘滞位"(用chmod +t),则该目录下的文件只能由
一、超级管理员删除
二、该目录的所有者删除
三、该文件的所有者删除

3.粘滞位总结

粘滞位的作用就是 防止共享文件时,普通用户之间能删除别人的文件。

相关内容

热门资讯

打发时间一元一分红中麻将跑得快... 认准微——as099055或as022055——客服扣675434346免押%D%A
(盘点十款)1元1分正规麻将群... 正规广东红中癞子麻将,15张跑得快,一元一分群,24小时不熄火
哪里有熊猫一元一分广东麻将上下... +薇:mj08522或hz05832游戏类型:单挑,多人,亲友圈模式、秒上下,所有用户都是微信实名制...
“发慌!””清友会管清友“是陷... 网恋有风险,恋爱需谨慎!“他们”通过网页,社交软件,等形式发布有色广告,诱骗点击链接下载APP,随即...