Answers:
实际上,到目前为止,我确实找到了我想要的东西,在这里分享,以便遇到此问题的任何人都可以尝试以下解决方案:
sudo setfacl -Rdm g:groupnamehere:rwx /base/path/members/
sudo setfacl -Rm g:groupnamehere:rwx /base/path/members/
R是递归的,这意味着该目录下的所有内容都将应用规则。
d是默认值,这意味着对于在该目录下创建的所有将来项目,默认情况下具有这些规则。
需要m以添加/修改规则。
第一个命令用于新项目(因此为d),第二个命令用于文件夹下的旧项目/现有项目。希望这可以帮助某人,因为这些内容有点复杂并且不是很直观。
-Rdm g:groupnamehere:rwx, -Rdm u:groupnamehere:rwx
。
与您接受的答案一起...
您可以将这些命令组合为:
sudo setfacl -Rm d:g:groupnamehere:rwx,g:groupnamehere:rwx /base/path/members/
d:
第一个而不是第一个-Rmd
?我可以告诉我们第二个参数应该没有default
-linux如何接受我这很奇怪。
根据适当的授权用户的需求,很容易以递归方式设置简单的UNIX权限,即目录和文件的权限。无法自动强加此功能。
您可以告诉用户使用设置的umask 0002,这有助于在0775处创建新文件(取决于应用程序)。但这不是强制性的。
我的理解是ACL不在UNIX / Linux系统上继承。它们根据需要设置。
至于文件/目录所有权,您在这里很不走运。
对于文件/目录组所有权,通过设置目录set-gid位(即DIRECTORIES上的g + s),确实会导致组所有权被继承。
在这种情况下,我要做的是执行定期的root cron脚本,该脚本将不符合要求的权限/所有权重置为此类目录中的标准。
另一个(不推荐)的过程是在处理这些文件时使用相同的用户ID。用户可以使用自己的UID登录到系统,然后使用sudo或su作为id来完成此操作。尤其对于ACL和权限位,这仍然不是100%。