有什么方法可以强制文件从父目录继承所有者权限?

有什么方法可以强制文件从父目录继承所有者权限?

有没有办法强制目录中创建的文件从父目录继承所有权?我尝试了粘性位,但似乎不起作用。

我正在寻找的示例:

drwxrwxr-x www-data somegroup parentdir

当 parentdir/newfile.htm 由 someuser 创建时:

-rwxrwxr-x www-data somegroup newfile.htm

不是

-rwxr-xr-x someuser somegroup newfile.htm

有什么办法吗?谢谢!

答案1

Linux 有一个叫做访问控制列表 (ACL)。这是扩展标准 unix 权限并对其进行微调的一种方法。其中一个优点是它确实具有继承性。可以做什么,已被相关引用在 serverfault 上发帖,并且对于您的具体情况:

sudo setfacl -Rdm g:somegroup:rwx /path/to/parent

至于强制文件由同一用户拥有,已在在 Linux 上让新文件继承组权限,但是强制每个文件拥有相同的所有者比通过 强制文件拥有相同的组所有权要麻烦得多setfacl。如果组拥有与所有者完全相同的权限,则没有必要强制相同的所有权。当然,您始终可以在创建文件时使用inotifywait并触发chown,但这是没有意义的,因为组所有权已经赋予您对文件的控制权。

也可以看看:

答案2

据我所知,您的问题(实际上并不是问题)分为两部分。

首先,您要将该目录中用户创建的文件的所有权直接授予 apache 用户www-data。这无法通过这种方式完成。

在现实生活中,如果你的朋友不想要某样东西,你就不能给他!

同样,你不能在未经许可的情况下将所有权交给某些用户。

那么如何解决这个问题呢:

你还需要chown

sudo chown www-data newfile.htm

另一个需要的是将文件的权限更改为继承父目录的权限。

这不是一个好习惯,因为目录通常具有可执行权限xcdx对于普通文件,请使其可执行,并且由于您提到的那些文件归 www-data 所有,这也会使您陷入巨大的安全威胁,所以我的建议不要这样做

但无论如何,如果你仍然想尝试:看看这两个问题

https://superuser.com/questions/264383/how-to-set-file-permissions-so-that-new-files-inherit-same-permissions

https://superuser.com/questions/151911/how-to-make-new-file-permission-inherit-from-the-parent-directory

相关内容