在我开始之前,如果这看起来像是一个重复的问题,我深感抱歉,但我找到的答案均无法解决我的问题。
我有一个运行我公司的服务器设置,系统上有几个用户。
在使用网站时,所有文件都需要 的权限www-data
,但是,当我将文件创建为matt
或 时taylor
,文件始终使用用户默认权限创建,因此matt:ceo
或taylor:staff
。我需要目录中的新文件www-data
始终继承 的权限,{user}:www-data
并且具有 660 的默认权限设置。
在我当前的设置中,我需要使用 sudo 来 chmod,并使用 chown 来纠正所有内容。
非常感谢任何帮助。
答案1
如果您设置设置gid位对于www-data
目录,在其下创建的所有文件的组都将设置为目录的组。执行此操作的命令是:
chmod g+s www-data
不要忘记将用户添加到拥有该目录的组中,例如
usermod -a -G www-data matt
usermod -a -G www-data taylor
我不知道如何将默认权限设置为 660,除非使用umask
,但这将应用于所有文件,无论在何处创建。
答案2
可以使用以下方式继承权限默认 ACL,如果您的文件系统支持它们:
setfacl -d -m u::rwx,g::rwx,o::- www-data