特殊权限:
SUID:运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者;
chmod u+s FILE
如果FILE本身原来就有执行权限,则SUID显示为s;否则为S;
一般这个可以认为以root用户的权限运行这个程序;
如:getfacl /bin/cat ,可以看到owner:root group:root
SGID:运行某程序时,相应进程的属组是程序文件自身的属组,而不是启动者所属的基本组;
chmod g+s FILE
如果一个目录设置了SGID位,那么如果任何一个用户对这个目录有写权限的话,
他在这个目录所建立的文件的组都会自动转为这个目录的属主所在的组,
而文件所有者不变,还是属于建立这个文件的用户。
如:
在/tmp目录下创建一个目录progrem,
1 |
|
当user1在/tmp/progrem创建文件时,文件的所有者和所属组都是user1,即其他的组成员没法编辑这个文件,只能看,,所以为了
其他组成员可以参与编辑这个文件,可以:: chmod 2770 /tmp/progrem,这样再创建文件的所属组就属于文件的所属组了;
(而这个也是平常使用最多的一个)
Sticky:
chmod o+t DIR
t的作用在于每个人都可以使用这个目录,但是没法删除这个目录以及这个目录下的任何东西,即使给w权限,也只是可以修改内容,也同样没法删除文件。
1755 2755 4755