Filesystems

為什麼在帶有setgid位的目錄中創建權限為2070的目錄和權限為060的文件?

  • March 7, 2012

我有以下目錄:

$ 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

為什麼是這樣?

我懷疑答案是儲存在您轉儲的 ACL 中的屬性中:

為什麼所有者沒有權限:

default:user::---

為什麼組有 rwx:

default:group:psych:rwx

為什麼別人沒有權限:

default:other::---

這個 ACL 東西覆蓋了傳統的 Unixy 行為。

引用自:https://unix.stackexchange.com/questions/33717