共享文件夹的权限正确,但无法保存文件

共享文件夹的权限正确,但无法保存文件

我在 Ubuntu 机器上设置了一个共享文件夹。当有人连接到该文件夹​​并创建文件时,文件权限会将组设置为读/写。我可以在 Ubuntu 或 Windows 上检查权限,它们都显示该组具有读/写权限。

当用户尝试编辑另一个用户创建的文件时,就会出现问题。例如,用户 1 创建了一个文本文档。如果用户 2 连接到共享文件夹,他们可以打开该文本文档,但当他们尝试保存文件时,会出现错误,提示他们没有权限。每个用户也属于同一组。

我的 samba.conf 文件附加内容如下:

[foldername]
    page = /home/path/to/directory
    writeable = yes
    browseable = yes
    read only = no
    valid users = user1, user2, user3, user4

答案1

另一个可能的解决方案是设置共享目录中的“setgid”位。这意味着在共享目录中创建的所有文件/目录将自动属于该组。如下所示:

chmod g+s <directory name>

您可能还必须在现有的子目录中执行此操作。将来,当创建新目录时,将自动为它们打开 setgid 位。

答案2

我刚刚按照这个测试了一下简单教程(“快速又肮脏”),我认为它不会错过,它对所有用户都完美无缺(我试过了)。关键是

   create mask = 0777
   directory mask = 0777

...它将按照您想要的方式处理权限。

相关内容