我正在尝试创建一个 samba 共享,任何人都可以读取(访客/匿名访问),但只有特定的系统组可以写入。然而,它不是任何人都可以写入的。
我创建了一个新目录并设置权限如下:
sudo mkdir /mnt/testshare
sudo chgrp testgroup /mnt/testshare
sudo chmod g+s /mnt/testshare
sudo chmod g+wrx /mnt/testshare
之后该目录列为:
drwxrwsr-x 3 root testgroup 4096 Apr 24 07:05 testshare
我在 smb.conf 中创建了一个条目:
[test]
path = /mnt/testshare
write list = @testgroup
create mask = 0660
force directory mode = 02770
guest ok = Yes
并重新启动我的 samba 服务器。
完成此操作后,我可以以访客身份或在登录时读取该目录中的所有文件,但即使我以该组(testgroup)中的用户身份登录,也无法删除或修改文件。
我已经检查过我是否能够通过 ssh 以同一用户身份在该目录中创建文件,因此系统权限没有问题。
我的问题
我应该如何配置 samba 来允许这样做?
的输出smbd --version
是Version 4.2.10-Debian
答案1
smbpasswd -a $user
解决方案是为有问题的用户运行。
我也改变了
create mask = 0660
force directory mode = 02770
到
create mask = 0665
force directory mode = 02775