这个问题始于上个月 Ubuntu 14.04 将所有人从 Samba 4.1 升级到 4.3(Ubuntu 对 LTS 版本做出这一大胆举动非常大胆,并且导致各种问题对于人们来说,但我离题了。)我认为 4.3 系列中必须有一些不同的配置可以满足我的适度需求,所以在这里询问。
我有一个简单的配置,旨在允许非常广泛的文件共享。完整的配置如下,但其目的是允许访客以用户 mbaynton 的身份在服务器上执行所有文件活动,并强制 samba 创建的文件和目录为模式 0744。这在 4.3 之前一直按预期工作 - 特别是,可以通过 samba 创建新文件或目录,然后通过 samba 对其进行修改。
我现在看到的行为是,samba 创建的新文件或目录将具有预期的模式 - 0744,因此所有者 rwx,将像以前一样由 mbaynton 用户和 mbaynton 的主要组拥有,但尝试通过 samba 修改任何现有文件或目录(包括使用 samba 创建的新文件或目录)都会因权限被拒绝而失败。
如果我为某个文件添加组写入权限,那么 samba 就可以修改它,但这并不是必需的,因为 samba 应该以 mbaynton 的身份执行写入。将我希望 samba 可以访问的所有文件更改为 g+w 并不是真正的解决方案。
如何更新我的 samba 4.1 配置以便在 4.3 中成功执行基本文件共享?
smb.conf:
[global]
workgroup = home
server string = NAS
netbios name = nas
interfaces = lo eth0
hosts allow = 127. 192.168.123. 192.168.124.
log file = /var/log/samba/log.%m
max log size = 10000
security = user
map to guest = Bad User
guest account = mbaynton
passdb backend = tdbsam
local master = yes
[data]
comment = Root of zpool
writable = yes
path = /data
force user = mbaynton
guest ok = yes
public = yes
force create mode = 0744
force directory mode = 0744
答案1
我认为您的配置没有问题。检查 smbpasswd 数据库中是否存在“mbaynton”的用户帐户。
我无法解释为什么创建新文件时不需要这个,而保存文件时却需要。Samba 逻辑中存在某种不一致 :)
阿图罗