权限和ACL访问控制-02-特殊权限
X(大写)
X
:给目录x
权限,不给文件x
权限(当文件本来就有x权限的话会重新赋予x权限)
例如:
chmod -R +X dir2
SUID
SUID属性一般运用在可执行文件上,当用户执行该执行文件时,会临时拥有该执行文件所有者的权限。
表现在权限位上就是一个s
:
必须放在二进制的、可执行的程序上才有用,比如/bin/passwd
就有suid
权限。
当普通用户使用passwd
执行修改密码时,发给root
去执行写入/etc/shadow
的操作。(写/etc/shadow
的这个操作,普通用户对/etc/shadow
无写权限,这时候就需要s
权限)
用法:
chown u+s BIN
chown u-s BIN
chown 4xxx BIN
tips:当一个文件或文件夹没有x权限时候,表明SUID无效,表现为一个
S
(大写):
SGID
SGID于SUID不同,SGID属性可以应用在目录或可执行文件上。
当SGID属性应用在目录上时,该目录中所有建立的文件或子目录的拥有组都会是该目录的拥有组。
当SGID属性应用在可执行文件上时,其他用户在使用该执行文件时就会临时拥有该执行文件拥有组的权限。
chmod g+s BIN
chmod g-s BIN
chmod 2xxx BIN
Sticky 粘滞位
Sticky作用在目录上才有意义。
在目录上加这个权限,那在这个目录里的文件,只有拥有者用户自己或者root可以删,其他普通用户不能删。
chmod o+t DIR
chmod o-t DIR
chmod 1xxx DIR
tips:执行完更改特殊权限位,最好
ll
看一下有没有问题,要养成这样的好习惯。chattr
chattr +i xxx
锁定该文件 ,不允许修改,删除,重命名,重定向方式清空也不可以。
chattr -i xxx
去掉锁定。
chattr +a xxx
只能>>追加内容,不能删除和减少。
chattr -a xxx
去掉只能追加这种锁定ls是看不到attr属性的,可以用
lsattr
显示特定属性。