Solaris - 通过文件继承用户对目录的所有权

Solaris - 通过文件继承用户对目录的所有权

我有一个拥有类似 user:group 的目录。我想对其进行类似 sgid 的操作,但对于用户而言 - 所有新创建的文件都具有目录所有权。例如:

drwxrwx--- 2 user   group   4096 Jun  3 16:10 test

其中所有创建的文件都自动为用户设置以下所有权:

-rwxrw---- 1 user group1 0 Jun  3 16:11 file1
-rwxrw---- 1 user group2 0 Jun  3 16:11 file2
-rwxrw---- 1 user group3 0 Jun  3 16:11 file3

有可能这样做吗?

答案1

你不可以做这个。标准 Unix 权限只能走到这一步,在某一时刻必须考虑使用ACL

您应该考虑您的系统有什么需求。如果您绝对需要这个,您应该开始阅读 ACL。

这里是 Arch Wiki 上关于该主题的页面。其中大部分可能适用于任何 Linux 发行版以及 Solaris,因为 Linux 主要复制了 Solaris 的 ACL。

答案2

我认为 Solaris 不允许非 root 用户将文件赠送给其他用户。因此,您不能让其他用户拥有新创建的文件:这些文件仍归创建它们的用户所有。

您可以做的是通过以下方式安排用户对文件拥有额外的权限访问控制列表。如果您为 user 设置 ACL 条目alice,则将应用该条目中的权限,而不是传统的 Unix 权限。您可以使用chmod命令或setfacl设置 ACL,以及ls -v](http://docs.oracle.com/cd/E26502_01/html/E29030/ls-1.html#scrolltoc) or [获取事实`查看文件的 ACL。除了应用于自身的 ACL 之外,目录还有一个默认 ACL,该 ACL 应用于该目录中新创建的文件。因此,您需要在顶级目录上设置默认 ACL。

chmod A+default:user:alice:rwx test

相关内容