![为什么在具有 setgid 位的目录中创建权限为 2070 的目录和权限为 060 的文件?](https://linux22.com/image/21516/%E4%B8%BA%E4%BB%80%E4%B9%88%E5%9C%A8%E5%85%B7%E6%9C%89%20setgid%20%E4%BD%8D%E7%9A%84%E7%9B%AE%E5%BD%95%E4%B8%AD%E5%88%9B%E5%BB%BA%E6%9D%83%E9%99%90%E4%B8%BA%202070%20%E7%9A%84%E7%9B%AE%E5%BD%95%E5%92%8C%E6%9D%83%E9%99%90%E4%B8%BA%20060%20%E7%9A%84%E6%96%87%E4%BB%B6%EF%BC%9F.png)
我有以下目录:
$ ll -d neptune
drwxrws---+ 5 beamin psych 4096 Mar 7 16:18 neptune
$ getfacl neptune
# file: neptune
# owner: beamin
# group: psych
# flags: -s-
user::rwx
group::r-x
group:sysadmins:rwx
group:psych:rwx
mask::rwx
other::---
default:user::---
default:group::r-x
default:group:sysadmins:rwx
default:group:psych:rwx
default:mask::rwx
default:other::---
我登录的身份为beamin
:
$ id beamin
uid=1000(beamin) gid=1000(beamin) groups=1000(beamin),2000(sysadmins)
$ umask
0002
但是,当我创建目录或文件时,我得到的是:
$ cd neptune
$ mkdir dir
$ touch file
$ ll
total 8
d---rws---+ 2 beamin psych 4096 Mar 7 16:25 dir
----rw----+ 1 beamin psych 0 Mar 7 16:25 file
为什么是这样?
答案1
我怀疑答案就在您转储的 ACL 中存储的属性中:
为什么业主没有权限:
default:user::---
为什么组有rwx:
default:group:psych:rwx
为什么别人没有权限:
default:other::---
这个 ACL 东西覆盖了传统的 Unixy 行为。