SMB 用户是目录的所有者,但它使用组权限

SMB 用户是目录的所有者,但它使用组权限

改写:

我有一个具有权限的目录755,使用 samba 共享。我有一个 samba 用户abc:abc,它也是该目录的所有者。 Windows samba 客户端写入该目录被拒绝。当我将目录 chmod 到 时775,Windows 客户端现在可以在其中写入。

从上面,我得出的结论是,目录正在检查 samba 用户的组权限,即使该用户是该目录的所有者。为什么?

原始细节:


如果我有任何错别字,请道歉,我是从空中打字的。

drwxr-xr-x abc abc 4096 DirectoryName

我已经smb.conf分享了。

[something] comment = something browseable = yes path = /something/something guest ok = no read only = no create mask = 0775 valid user = abc

在 Windows 10 上,我使用用户 abc 访问 samba 共享。我注意到我没有写入该文件夹的权限。这对我来说很奇怪,因为它abc是目录的所有者,并且应该具有完全访问权限。我使用 chmod 775 更改了权限,abc现在可以写入,因此我得出的结论是它正在使用组权限进行访问。

为什么?我认为所有者权限优先于组。这是它的工作原理还是 samba 处理权限的方式?

directory masksmb.conf 中还需要吗?它与目录权限本身有何不同?

答案1

如果不配置,directory mask则使用默认值。该值相当于umask进程的值。它会影响新创建的目录的权限。

新目录具有以下权限:

目录掩码000
000
目录掩码 755
第755章
目录掩码 777
第777章

答案2

我刚刚经历过这些确切的症状。 Centos 8、Samba 4.11.2。结果发现是缓存有问题。我改编了在以下位置找到的命令行(自然是作为超级用户)此康比茨页面我的具体设置如下:

systemctl stop nmb
systemctl stop smb
net cache flush
cd /var/lib/samba
rm *.tdb
systemctl start nmb
systemctl start smb

这样做之后,问题就消失了; Samba 开始正确应用用户权限而不是用户的组权限。无需重新启动。

相关内容