访问控制列表——权限错误?

访问控制列表——权限错误?

创建file1并授予000权限。

[root@localhost ~]# ls -ltr file1
----------. 1 root root 0 Jan 28 08:09 file1

使用访问控制列表授予“test”用户 rw 权限:

setfacl -m u:test:rw file1

selinux的file1权限正确

[root@localhost ~]# getfacl file1
# file: file1
# owner: root
# group: root
user::---
user:test:rw-
group::---
mask::rw-
other::---

但是当我看到文件权限时它显示060

[root@localhost ~]# ls -ltr file1
----rw----+ 1 root root 0 Jan 28 08:09 file1

问题:这个060权限从哪里来的?

答案1

对于具有acl(5)扩展属性的文件,文件掩码中的 3 个组位可能具有不同的含义 - 它们是ACL_MASK,即可以由 授予的最大访问权限ACL_USERACL_GROUP_OBJ以及ACL_GROUP存储在 ACL 扩展属性中的权限。引用手册acl(5)页:

文件所有者、组等权限与具体ACL条目之间存在对应关系:所有者权限对应条目的权限ACL_USER_OBJ。如果ACL有ACL_MASK 条目,则组权限与该条 ACL_MASK目的权限相对应。否则,如果ACL没有ACL_MASK条目,则组权限与条目的权限相对应ACL_GROUP_OBJ。其他权限对应条目的ACL_OTHER_OBJ 权限

既然您已经授予test用户rw权限,并且做了不是使用-n选项setfacl(1)(“不重新计算有效权限掩码”),ACL 掩码已正确设置为rw

相关内容