我刚刚在全新安装的 Ubuntu Server 20.04 LTS 上设置了 Samba。我设法从网络上的 Windows 10 计算机访问共享。然后我启用了 Windows ACL,因为我想对具有许多用户的目录进行更细粒度的权限控制。
问题出现了,当我使用上下文菜单>属性>安全>编辑>添加从 Windows 查看目录权限时,我想添加另一个 UNIX 用户的 UNIX 组,但是它不存在,所以我无法添加?
共享中创建的任何目录都有 UNIX 用户及其目录上的组权限主体,但如果我要删除组主体,我将无法将其添加回来。但我可以将任何 Samba UNIX 用户添加到权限中。这些组是否必须以某种方式向 Windows 客户端公开?
这是 smb.conf,它是经过微小改动的默认配置文件。
[global]
log file = /var/log/samba/log.%m
logging = file
map to guest = Bad User
max log size = 1000
obey pam restrictions = Yes
pam password change = Yes
panic action = /usr/share/samba/panic-action %d
passwd chat = *Enter\snew\s*\spassword:* %n\n *Retype\snew\s*\spassword:* %n\n *password\supdated\ssuccessfully* .
passwd program = /usr/bin/passwd %u
server role = standalone server
server string = %h server (Samba, Ubuntu)
unix password sync = Yes
usershare allow guests = Yes
idmap config * : backend = tdb
map acl inherit = Yes
vfs objects = acl_xattr
[printers]
browseable = No
comment = All Printers
create mask = 0700
path = /var/spool/samba
printable = Yes
[print$]
comment = Printer Drivers
path = /var/lib/samba/printers
[nas]
comment = NAS
path = /shares/
read only = No
答案1
您从错误的角度执行此操作 ;-) 您需要在 Windows 上创建一个组,我们将其称为“win_group”,然后在 Ubuntu 上创建另一个组,我们将其称为“unix_group”。然后在 Samba 服务器上,使用以下命令将一个组映射到另一个组:net groupmap add unixgroup=unix_group ntgroup=win_group 这必须以“root”身份完成。然后,您只需在 Windows 上使用“win_group”,Samba 将为您完成其余工作。