7.2 文件的特殊权限:suid sgid sticky和文件扩展权限ACL
文件的特殊权限:suid sgid sticky和文件扩展权限ACL
其实文件与目录设置不止这些,还有所谓的特殊权限。由于特殊权限会拥有一些`特权`
特殊权限:
7.2.1 文件的特殊权限:suid sgid sticky
7.2.1.1 SUID(set uid 设置用户 ID):
限定:只能设置在二进制可执行程序上面。
对目录设置无效功能:程序运行时的权限从执行者变更成程序所有者的权限
7.2.1.2 SGID:
限定:既可以给二进制可执行程序设置,也可以对目录设置
功能:在设置了SGID权限的目录下建立文件时,新创建的文件所属组会,继承上级目录的所属组
7.2.1.3 Stickybit:
粘滞位权限是针对目录的,对文件无效,也叫防删除位
功能:在一个公共目录,每个用户都可以创建文件,但是只能够删除属于自己文件,不能删除其他用户的文件
限定:只作用于目录
功能:目录下创建文件中有root、文件创建者、目录下的所有者的文件进行删除
例子:系统中的 tmp 目录就是这样
这3个特殊权限对应的数值为
UID 属性一般用在可执行文件上,当用户执行该文件时,会临时拥有该执行文件的所有者权限。使用`ls -l` 或者 `ll` 命令浏览文件时,如果可执行文件所有者权限的第三位是一个小写的`s`,就表明改执行文件拥 SUID 属性。比如 /usr/bin/passwd 文件
问题思考: 普通用户 wayne,没有对 shadow 文件写入的权限,但是wayne用户使用passwd修改自己密码时,可以修改 shadow 文件中内容,原因是什么?
7.2.2 文件扩展权限 ACL
扩展 ACL:access control list
例:设置用户 wayne 对文件 a.txt 拥有rwx 权限,wayne 不属于 a.txt 的所属主和组,wayne 是 other。