我们在 Ubuntu 18 服务器上使用 samba 共享文件夹。所有客户端也是 Ubuntu 18。文件夹配置如下。
[Tecnica] comment = Carpeta de manuals i informació tècnica browseable = yes path = /home/serverone/DADES/Tecnica writeable = yes public = no valid users = tecnic albert create mask = 0770 directory mask = 0770
# admin users = albert
无效用户 = contabilitat administratiu 写入列表 = tecnic albert
# 强制组 = forafoc`
Fstab 中的文件夹通过这一行挂载。
//192.168.1.10/Tecnica /home/tecnic/Tecnica cifs credentials=/root/.smbcredentials,uid=1001,gid=1001,rw,dir_mode=0770,file_mode=0770,_netdev 0 0
问题是,当客户端在 Tecnica 文件夹内创建文件夹或文件时,组权限不适用。
如果文件 fstab 设置组权限 rwx 并且 samba 设置为允许写入...内核上是否有任何东西不允许 Samba 设置此权限?
比尔
答案1
当服务器查看 /home/serverone/DADES/Tecnica 时,从服务器角度来看未应用组权限;当客户端查看 /home/tecnoc/Tecnica 时,从客户端角度来看未应用组权限?
如果它来自客户端,添加“nounix”选项后它是否可以正常工作:
//192.168.1.10/Tecnica /home/tecnic/Tecnica cifs credentials=/root/.smbcredentials,uid=1001,gid=1001,rw,dir_mode=0770,file_mode=0770,_netdev,nounix 0 0
编辑:如果问题在于多个客户端访问此共享而不是同一客户端上的多个用户,则有一个选项是:
您只允许两个用户访问此共享 tecnic 和 albert,并且 albert 似乎是管理员,因此在 [Tecnica] 的共享定义中添加另一行:
force user = albert
[Tecnica]
comment = Carpeta de manuals i informació tècnica
browseable = yes
path = /home/serverone/DADES/Tecnica
writeable = yes
public = no
valid users = tecnic albert
force user = albert
然后,当 tecnic 被允许访问时,他将充当 albert。tecnic 添加的任何新文件都将归 albert 所有,因此现在两个用户都可以写入对方的文件。所有旧文件的所有权都必须更改为 albert。
替代方法稍微复杂一些,并且仅在使用 Ubuntu Server 时才有效。请参阅我的帖子:服务器上共享目录的最佳实践(Samba Windows 10 客户端)