我有一个“投递箱”目录供学生提交作业。其权限设置为“drwx-wx---”,其中所有学生都属于该组。这允许他们写入但不能从文件夹中读取。我想设置 ACL,以便用户 cs63(教学人员使用的帐户)可以读取所有文件。我尝试这样做:
chmod +a "user:cs63 allow read,file_inherit,directory_inherit" Top
位于显示所有投递箱目录的顶级目录中。当我使用“ls -lde”查看属性时,我看到:
user:cs63 allow list,file_inherit,directory_inherit
我假设“read”已更改为“list”,因为“read”不适用于目录,但如何指定我希望 cs63 能够读取(而不仅仅是列出)所有文件?
另外,一旦我设置了正确的 ACL,它会应用于已经提交的文件还是仅应用于未来的文件?
我通过 ssh 连接到服务器,因此我需要在命令行上完成所有这些操作。
编辑:
我尝试了@mindc的建议:
chmod -R +a "user:cs63 allow read,file_inherit,directory_inherit" Top
它适用于大多数文件,但不适用于权限为:
drwx---rwx+ student cs63sp12
其中用户 cs63 是 cs63sp12 的成员。当我在子目录上执行“ls -le”时,我得到:
0: user:cs63 allow list,file_inherit,directory_inherit
答案1
尝试-R
切换,如下所示:
chmod -R +a "user:cs63 allow read,file_inherit,directory_inherit" Top