在 Ubuntu 16.04.1(Samba 4.3.11-Ubuntu)上,所有共享都会忽略组可写位create mask
。force create mode
在我的主共享或全局共享上创建新的文本文件时,它是使用权限 0640 创建的,而我预计它的权限是 0660。我的相关部分smb.conf
如下。
[global]
directory mask = 2770
create mask = 0660
map archive = no
[homes]
comment = Home Directory for %U
valid users = %S
read only = no
create mask = 0660
force create mode = 0660
directory mask = 2770
force directory mode = 2770
browseable = no
[build]
comment = Build Share
force user = %U
force group = buildshare
path = /mnt/build
read only = no
create mask = 0660
force create mode = 0660
directory mask = 2770
force directory mode = 2770
browseable = yes
如果我将其更改create mask
为0777
和force create mode
更改为0777
,则结果会略有不同,并且创建的权限是755
,当我期望使用选项时,组和其他的可写位仍未设置force create mode
。
force create mode
该部分中的设置[global]
不会改变行为。
我没有观察到使用和的相同问题directory mask
,force directory mode
并且在添加后解决了该问题force directory mode = 2770
Samba 服务器正在针对 Active Directory 服务器(Win2012R2)进行身份验证以进行单点登录。
按照smb.conf(5)
,它应该可以工作,但我却感到很困惑。
create mask (S)
The default value of this parameter removes the group and other write and execute bits from the UNIX
modes.
Following this Samba will bit-wise 'OR' the UNIX mode created from this parameter with the value of
the force create mode parameter which is set to 000 by default.
答案1
问题是设置了“服从 pam 限制 = 是”。将其更改为“否”,权限现在设置正确。这是帖子中的一条评论设置 umask、设置权限并设置 ACL,但 SAMBA 没有使用这些?