我有一个目录test
,其所有者为 user:group ,权限为 770 。
我希望其中的每个目录和文件test
都具有相同的规格。
我尝试过chmod g+s,u+s test
,部分有效:该文件夹中的目录确实继承了所有权和权限,但仅记录了所有者,而不是权限。我也尝试过chmod g+t test
,但完全失败了。
我怎样才能达到预期的结果?
编辑:管理员不允许安装 ACL 并且 umask 不起作用,因为文件不会从 CLI 生成
答案1
(+ s setgid
) :在不同的 UNIX 操作系统中有时具有不同的含义。但是,它们启用用户和组继承,但不启用权限继承。
默认情况下,使用每个用户的“umask”设置权限。
如果 umask 为“0”,则将使用以下权限创建文件和目录:默认情况下 rwxrwxrws(即八进制模式 777,或二进制:111111111),因此将是:可读、可写和可执行(或者,对于目录:“可交叉”)对于所有者(第一个 rwx 三元组),文件关联的组(第二个 rwx 三元组)以及每个人/其他所有内容(第三个“rwx”三元组)。
umask:可以“屏蔽”其中一些位。
通常root的umask更具限制性,例如:077(意味着它将隐藏所有组和其他位,因为“077”八进制是:二进制的000111111)而普通用户通常是022(即000010010)意味着它将“隐藏”(删除)该组和“其他三元组”的“写入”位。
IE:
without umask the file or directory have those triplets:
rwx rwx rwx , ie: 111 111 111
If created by root, with a umask of : 077, this file would instead have:
111 111 111
XOR 000 111 111
= 111 000 000, thus : rwx --- --- (ie, only the owner can read/write/execute it)
If created by a user, with a umask of : 022, it would instead have:
111 111 111
XOR 000 010 010
= 111 101 101, thus : rwx r-x r-x