我在服务器上使用 NFS 安装了一个文件夹。该文件夹有子目录,我想通过使用 SAMBA 将特定文件夹共享给特定用户组。
它没有按预期工作,因为每个用户都可以创建文件,但是他们只能访问自己的文件,而不能访问其他人的文件。
Samba 服务器上的 NFS 挂载:
172.16.54.56:/export/proyectos on /proyectos type nfs (rw,noatime,rsize=131072,wsize=131072,acregmin=10,acl,nfsvers=3,addr=172.16.54.56)
现在只有一个文件夹:
drwsrws---+ 22 root proyecto-innovacion 3,9K 2012-08-30 11:40 innovacion
然后,有来自两个用户的文件:
-rw-rwxr--+ 1 jorge.suarez proyecto-innovacion 0 2012-08-30 12:10 Archivo de Prueba
-rw-rwx---+ 1 maria.tenorio proyecto-innovacion 42K 2012-07-30 11:55 correos.xlsx
'+' 是因为 ACL,设置为对新文件设置适当的权限,因此它们始终可以访问组。这是我在 NFS 服务器上使用的唯一 ACL:
# setfacl -d -m mask:007 /export/proyectos
事实上,两个用户都可以使用 NFS 访问彼此的文件。
如果我可以理解此命令的输出,则两个用户都可以正常映射到 Samba 组,以防万一。
# 网络用户信息 jorge.suarez 输入 root 的密码: 域用户 项目创新 # 网络用户信息 maria.tenorio 输入 root 的密码: 域用户 项目创新
这是 smb.conf。我也有一个homes
部分,但我省略了它:
[全球的] 工作组 = 工作组 netbios 名称 = SAMBASRV 服务器字符串 = %h 服务器(Samba、Ubuntu) 接口 = 127.0.0.0/8,eth0 passdb 后端 = ldapsam:"ldap://10.1.176.237" 系统日志 = 0 日志文件 = /var/log/samba/log.%m 最大日志大小 = 1000 dns 代理 = 否 ldap admin dn = "cn=目录管理器" ldap组后缀=ou=Groups,ou=CITIUS ldap 后缀 = dc=inv,dc=usc,dc=es ldap ssl = 否 ldap用户后缀=ou=People,ou=CITIUS 紧急行动 = /usr/share/samba/紧急行动 %d 主机允许 = 172.16.54., 127. 主机拒绝=全部 严格锁定 = 否 [创新] 评论 = Proyecto innovacion 路径 = /proyectos/%S 有效用户 = @proyecto-innovacion 只读 = 否 创建掩码 = 0770 目录掩码 = 0770 可浏览 = 否 可浏览 = 否
总结一下这个问题,创建文件的用户可以访问他自己的文件。但没有其他人的文件。
我不得不放弃通过 NFS 使用 ACL。面具不能正常工作。
我现在改用 inotify,在启动时启动一个小脚本:
该脚本现在修复了权限,而不是通过 NFS 退回到 ACL。