设置卷的权限以对所有文件和文件夹进行分组写入


1

对我来说,这似乎应该很容易,但是我很难找到一个很好的答案,这似乎对我来说是确定的。

我有一个与妻子和我共享的硬盘驱动器(内部驱动器)。我的妻子既是我也是管理员组,并且该驱动器的组所有权也是admin

该卷的当前权限为:drwxrwx---。我和我的妻子都可以添加和创建文件,但是,这些新文件没有继承父卷权限。如果创建新文件夹或文件,则不会设置g + w位。它是只读的。

我真的不想将其umask从更改为022002因为这只是我要g+w设置的音量。我想如果那是唯一的解决方案,我可以。

我想确保创建,复制或移动到该卷(在卷上的任何位置)的任何文件都具有正确的权限。这可能吗?

还是我需要依靠umask一个cron工作来重置权限?

编辑-首次尝试使用ACL

这是我尝试过的测试。但是,它并没有将其转发到我创建的下一个文件。我认为我不完全了解这应该如何工作...

$ mkdir test-acl
$ chmod 770 test-acl
$ ls -le
total 0
drwxrwx---  2 damon  admin  68 Jan 13 09:50 test-acl
$ chmod +a "admin allow list,add_file,search,delete,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,file_inherit,directory_inherit" test-acl
$ ls -le
total 0
drwxrwx---+ 2 damon  admin  68 Jan 13 09:50 test-acl
 0: group:admin allow list,add_file,search,delete,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,file_inherit,directory_inherit
$ cd test-acl
test-acl$  touch test.txt
test-acl$  ls -le
total 0
-rw-r--r--+ 1 damon  admin  0 Jan 13 09:50 test.txt
 0: group:admin inherited allow read,write,execute,delete,append,readattr,writeattr,readextattr,writeextattr,readsecurity

Answers:


1

您可以使用以下命令:

sudo chmod -R +a "group:examplegroup allow list,add_file,search,delete,add_subdirectory,delete_child,readattr,writeattr,readextattr,writeextattr,readsecurity,file_inherit,directory_inherit" /path/to/folder

注意-R哪个应该递归应用。

但是,这对于移入文件夹的项目不起作用。


这似乎有效!我有点不高兴,因为g+r只有文件的许可才能...但是,当我切换用户帐户时,尽管终端机告诉了我,但我的妻子仍具有读/写访问权限。Finder.app 两次列出了admin的权限,一次是使用custom ...,然后对此进行了更多的实验,看是否更适合此umask更改。
thornomad 2014年

@thornomad实际上,POSIX权限与在某些情况下会覆盖它们的ACL不同。
grg

1

您可以使用访问控制列表(ACL)设置正确的权限,将其修复在驱动器上的文件夹中。

检查手册页中的chmod(1),您将需要在父文件夹上设置'file_inherit'和'directory_inherit',然后对其设置权限以读取和写入该组,但对所有用户而言则没有任何权限。

如果您通过SMB而不是AppleShare进行共享,则可能还需要将ACL用于SMB共享。


0

在驱动器上获取信息,单击解锁图标(如果已锁定),使用管理员凭据进行身份验证,然后选中“ 忽略此卷上所有权”复选框。


那会不允许任何用户(包括我的孩子)访问该驱动器吗?我的孩子那里确实有帐户,我希望他们没有任何访问权限。在我的问题中,我没有具体说明……
thornomad 2014年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.