在其他用户创建的文件夹中创建文件

在其他用户创建的文件夹中创建文件

非常感谢你们能为我解决我遇到的问题提供的任何帮助。首先,我对命令行很熟悉,但绝不是 Linux 专家,因此如果可能的话,我希望你们能提供一些详细的答案。谢谢!!

我正在尝试设置运行 Ubuntu 14.04 的文件服务器。我有一个文件夹 /files,我将在其中创建几个文件夹,这些文件夹将以不同的权限共享。我正在运行 samba,并且可以从我网络上的机器访问共享。我已将文件目录的所有者更改为我的管理员用户和我创建的新组,为简单起见,我将其称为 mygroup。

我将 /files 目录的权限更改为 myuser:mygroup,然后在 Ubuntu 中创建新用户,并将他们添加到 mygroup 作为主要组。我还将 files 目录的权限更改为 770,以便我的管理员用户和 mygroup 都具有完全写入权限。然后我为每个组分配了 samba 用户,并允许他们访问我在 samba 中的共享(顺便说一下,我使用的是 GUI,但如果有必要,我很乐意使用命令行)。

到目前为止这一切都很好,我的用户可以从 Mac 和 Windows 连接到 Samba 共享,甚至可以创建目录。

问题是,如果用户在共享内创建新目录,则该目录将具有 755 权限,这意味着 mygroup 中的其他用户可以读取和执行但不能写入该目录。

我已经阅读了有关 ACL 的信息,并对 /files 目录运行了以下命令:

setfacl -m "g:mygroup:rwx" /files/

然后如果我运行:

geftacl /files/ 

我可以在列表中看到 group:mygroup:rwx,如果我测试 /files 的子文件夹,情况也是如此。据我所知,这应该将该目录中创建的任何新文件的权限设置为至少 x7x?

我还在 smb.conf 中看到了创建掩码和目录掩码设置,我尝试将它们更改为 0775(并取消注释它们)但它仍然使用相同的权限创建。

有人可以推荐其他值得尝试的东西吗?

答案1

您想更改用户的umask

有一个答案描述了它这里

总结

$ umask 007

对于每个用户。

相关内容