我们有 2 个运行 samba 版本的 ubuntu 8.04 LTS 文件服务器3.0.28a-1ubuntu4.12,他们为 Windows Server 2003 机器导出 Samba 共享。没有 Windows AD 域,只有普通的用户身份验证。来自/etc/samba/smb.conf
:
[global]
workgroup = WORKGROUP
security = SHARE
passdb backend = smbpasswd:/etc/samba/smbpasswd
unix password sync = no
syslog = 0
log file = /var/log/samba/log.%m
max log size = 1000
dns proxy = No
panic action = /usr/share/samba/panic-action %d
encrypt passwords = true
invalid users = root
hosts allow = 10.1.1.0/24
[md0]
comment = md0
path = /mnt/md0/smb/share1
valid users = user1
force user = root
force group = root
read only = no
create mask = 0660
directory mask = 0770
browseable = Yes
/mnt/md0/
是一个 raid 系统并且文件权限是root.root
出于历史原因。
在 Windows Server 2003 计算机上,我们使用脚本访问共享:
net use t: \\fileserver0\md0 passwordforuser1 /user:user1
在 Windows 机器上,我们现在看到的Unix user\root
是所有者:
这在逻辑上是正确的。
但是是否有机会改变 samba 配置以便我们user1.user1
在 Windows 端看到所有者而不是Unix user\root
?
答案1
首先,您可以调整 samba 中的组映射,以调整将显示的组:
net groupmap add unixgroup=root ntgroup=user1
其次,您可以通过修改 samba.conf 添加以下代码来映射单个用户:
username map = /etc/samba/smbusers
到 [global] 部分,然后创建文件 /etc/samba/smbusers,其中包含:
root: user1