强制新文件继承指定的所有权和权限

强制新文件继承指定的所有权和权限

我有一个目录

/var/new_share/KRA2017/Prateek

与这些内容

-rwx------  1 superadmin   superadmin    0 Feb 16 15:14 file1.txt*
-rwx------  1 superadmin   superadmin    0 Feb 16 15:14 file2.txt*
-rwx------  1 superadmin   superadmin    0 Feb 16 15:15 file3.txt*
-rwx------  1 superadmin   superadmin    0 Feb 16 15:15 file4.txt*

/var/new_share/KRA2017/

目录的权限和所有权/var/new_share/KRA2017/Prateek

dr-xrwx--- 2 prateekkaien superadmin 4096 Feb 16 15:15 Prateek/

即组所有者只能写入,用户只能读取和执行。

每当用户写入文件时,superadmin文件的用户和组所有者都会成为超级管理员,如下所示。file1.txt file2.txt file3.txt file4.txt由用户编写superadmin

我希望文件的用户所有者坚持使用具有相同 rx 权限的 prateekkaien,而组所有者是具有 rwx 权限的超级管理员,就像其父目录一样。

这怎么可能?

基本上我想要的只是让文件继承父目录的所有者、组和权限。

答案1

在 Unix 上,文件的所有者是创建该文件的用户。

有几个问题已经回答了这个问题并解释了原因:

答案2

您正在尝试强制执行r-x对所有者用户的访问prateekkaien以及rwx对所有者组的访问superadmin。这是行不通的prateekkaien,因为作为文件所有者,拥有对其的完全权限,并且它可以简单地执行 achmod u+r来获得对该文件的写访问权限。

您可以做的是在目录上设置 SGID 位,如 @dirkt 和 @Murphy 评论的那样,因此所有新创建的文件都将具有superadmin所有者组。

相关内容