Linux文件和目录的粘滞位(sticky bit)
来源:互联网 发布:网易家居 知乎 编辑:程序博客网 时间:2024/05/10 14:58
http://dongwei.iteye.com/blog/921961
今天维护系统时发现一个非常诡异的问题:AAA用户和BBB用户同属AAA组,但用AAA用户创建的文件,权限设置为777后,还是不能用BBB用户删除。诡异!
几经周转,发现AAA用户创建文件位置的上层目录的权限是drwxrwxrwt,做开发这么多年了,还没见过所谓"t"的权限,于是找了一位公司的 linux大师帮忙,大师噼里啪啦的做了一堆试验后,然后在google上搜索"rwt linux",终于发现了问题,发现这种用法的名字是“文件的粘滞位(sticky)位“。它的作用是:普通文件的sticky位会被linux内核忽 略,但
目录的sticky位表示这个目录里的文件只能被owner和root删除,没错这就是问题本质,也和我的现象相吻合。于是用root用 户,对这个文件夹chmod -t 后,用BBB用户就可以删除刚才AAA用户创建的文件了。一切正常了。哇。。。。世界太平了!真是长见识了。所以将这个知识点整理如下:
Python代码
- 文件的粘滞位(sticky)位是作什么用的?
- 普通文件的sticky位会被linux内核忽略,
- 目录的sticky位表示这个目录里的文件只能被owner和root删除
- 粘着位(Sticky bit)
- 如果用户对目录有写权限,则可以删除其中的文件和子目录,即使该用户不是这些文件的所有者,而且也没有读或写许可。粘着位出现执行许可的位置上,用t表示,设置了该位后,其它用户就不可以删除不属于他的文件和目录。但是该目录下的目录不继承该权限,要再设置才可使用。
- # chmod 1770 xxx
- 举一个linux下的常见目录来做例子,也就是 /tmp 目录来说一下粘连位的作用。
- #ls -dl /tmp
- drwxrwxrwt 4 root root .........
- 注意other位置的t,这便是粘连位。
- 我们都知道,/tmp常被我们用来存放临时文件,是所有用户。但是我们不希望别的用户随随便便的就删除了自己的文件,于是便有了粘连位,它的作用便是让用户只能删除属于自己的文件。
- 那么原来的执行标志x到哪里去了呢? 系统是这样规定的, 假如本来在该位上有x, 则这些特别标志 (suid, sgid, sticky) 显示为小写字母 (s, s, t). 否则, 显示为大写字母 (S, S, T) 。
- 3)粘着位(sticky)
- eg:
- chmod 777 abc
- chmod +t abc
- 等价于
- chmod 1777 abc
- 在以前旧的系统当中,如果一个程序文件一旦设置了粘着位,
- 那么当该程序中止的时候他的所有指令段将被保存到系统的交换分区当中,
- 再次运行时可以更快的调入系统.
- 不过现在的操作系统已经不再使用这种功能了.
- 但这并不表示这一功能已经完全被废弃.
- 当一个目录设置为粘着位时,它将发挥特殊的作用,
- 即当一个目录被设置为"粘着位"(用chmod a+t),则该目录下的文件只能由
- 一、超级管理员删除
- 二、该目录的所有者删除
- 三、该文件的所有者删除
- 也就是说,即便该目录是任何人都可以写,但也只有文件的属主才可以删除文件。
0 0
- Linux文件和目录的粘滞位(sticky bit)
- Linux文件和目录的粘滞位(sticky bit)
- 文件的粘滞位(sticky bit)
- linux下的粘滞位--sticky bit
- linux sticky bit 目录权限 rwt权限
- linux sticky bit 目录权限 rwt权限
- linux sticky bit 目录权限 rwt权限
- linux sticky bit 目录权限 rwt 权限
- 【Linux】文件的权限管理及特殊属性-粘滞位(sticky bit)概述
- Linux文件的特殊权限之Sticky Bit (粘滞位,SBIT)
- linux文件安全---粘连位(Sticky bit)
- Linux 文件特殊权限 Sticky Bit
- Linux——粘滞位(Sticky bit)
- linux中的粘滞位(Sticky bit)
- Linux - sticky bit
- Linux中Sticky BIT
- [Linux]:Linux文件特殊权限 SUID/SGID/Sticky Bit
- Linux文件特殊权限 SUID/SGID/Sticky Bit
- DbContext连接字符串的发现
- 大数据分析-用户画像详解
- 【暴侃IT圈】单身狗不再寂寞,公众号陪你聊天
- ceph源码解析--osd篇
- Linux bc --简单的计算器
- Linux文件和目录的粘滞位(sticky bit)
- Linux bg ,fg --前后端程序调度
- spring框架整合使用定时任务框架java quartz的示例代码配置
- linux字符驱动之自动创建设备节点
- 调用layoutSubviews一定要注意别忘了调用父类
- ubuntu 代理服务器nginx安装
- Linux cal --显示日历
- MySQL 执行插入操作时报1366 - Incorrect string value: '\xE4\xB8\xAD\xE6\x96\x87' for column 'name' at row 1
- RxJava 官方文档中文翻译