配置共享文件系统目录的最佳方法是什么?(超出标准的unix烫发)

xen*_*ide 5 security permissions

我的系统上有多个用户。我想要共享目录,如音乐、视频。图片等问题是我希望用户能够将任何新文件写入任何目录,但不能删除或修改他们不拥有的任何文件。使用标准的 unix perms,如果您可以将文件添加到目录中,您也可以删除其他文件。我还想确保用户组始终可以读取这些目录中的所有文件。

我可以用 POSIX ACL 做到这一点吗?还是我需要更高级的东西,比如 SELinux(或其他安全框架)。

我不想工作的例子。

su - root
mkdir /home/music
chmod 775 /home/music
chgrp users /home/music
su - user1 /home/music
touch /home/music/testfile
ll /home/music/testfile
su - user2
rm /home/music/testfile
ll /home/music
Run Code Online (Sandbox Code Playgroud)

max*_*zig 9

如果我理解正确,您希望音乐/视频等目录的语义与 /tmp 相同。

为此,您可以将粘性位放在目录上。引用 chmod 手册页:

受限删除标志或粘滞位受限删除标志或粘滞位是单个位,其解释取决于文件类型。对于目录,它可以防止非特权用户删除或重命名目录中的文件,除非他们拥有该文件或目录;这称为目录的受限删除标志,通常可在世界可写目录中找到,例如 /tmp。