![Linux - 从父目录继承文件权限](https://linux22.com/image/187154/Linux%20-%20%E4%BB%8E%E7%88%B6%E7%9B%AE%E5%BD%95%E7%BB%A7%E6%89%BF%E6%96%87%E4%BB%B6%E6%9D%83%E9%99%90.png)
我希望目录中所有新创建或移动的文件都继承父目录的权限。
为此我做了:
chown -R myuser:myuser /home/directory/
chmod -R 2774 /home/directory/
chmod g+s /home/directory/
因此该目录中的所有文件都有正确的组,但没有正确的权限:0644。有没有办法为所有文件保留 2774 权限,以便该组有权写入/更改文件?
答案1
通常,UMASK 用于权限。默认 UMASK 通常为 0022(这些是从权限中删除的位)。您可以将 UMASK 更改为 0002。您可以在系统范围内或仅针对单个用户扩大权限。 UMASK 链接到创建,而不是文件系统。
如果您希望文件系统确定权限,您可能应该使用 ACL。就我个人而言,我不喜欢这些(因为可管理性),但是
setfacl -Rm g:somegroup:rwX /home/directory
应该做你想做的事。
第三种选择是每分钟设置一次权限的 cronjob,但我不会去那里。