Samba权限被忽略

我已经在smb.conf中定义了以下份额

[development_server] comment = Development directories path = /sites writeable = yes valid users = @dev guest ok = no directory mask = 0775 create mask = 0775 

问题是,无论何时我在Windows中创build一个文件该文件的权限设置为764而不是被设置为755.然而目录设置正确与775.我很困惑。 我尝试设置以下内容:

 [global] unix extensions = yes 

但是这也没有帮助。

create mask只能用来防止设置权限位,因为掩码与客户端尝试设置的位按位进行AND 。 如果掩码设置为7,但客户端尝试less一些,例如6,则客户端“获胜”为0 AND 1 ,执行位为0

force create mask作用是相反的,它会将掩码OR客户端尝试设置的掩码,所以如果你在这里设置一个7 ,那么每个位都会以x OR 1来结束,它总是1

无论客户端尝试设置什么值,都要强制使用值0775 ,必须将两者结合起来:

 create mask = 0770 (0000 would also work) force create mask = 0775 

请参阅文档 。

问题原来是我的configuration(或缺乏)的安全模式设置。 下面的smb.confconfiguration现在正在为我工​​作,并且我的安全组“dev”中的所有用户现在都拥有775个共享中创build的所有文件:

 [development_server] comment = Development directories path = /sites writeable = yes valid users = @dev guest ok = no create mask = 0775 force create mode = 0775 security mask = 0775 force security mode = 0775 directory mask = 0775 force directory mode = 0775 directory security mask = 0775 force directory security mode = 0775 

我通过askubuntu进行挖掘时发现了这个解决scheme