我有一台充当 NFS 服务器的机器,这台机器与其他机器共享文件。开发人员使用开发用户将文件上传到 NFS 服务器,但在 NFS 客户端中,这些文件需要由网络用户并且开发人员没有每次登录 Web 服务器并对这些文件进行 chown 的凭证。 我希望每次将文件上传到 NFS 客户端时,它们都自动归 Web 用户所有。
我尝试使用 ACL,但没有结果。而且 Nfsv4_ACL 很混乱。
这可能吗?还是我必须寻找其他选择?
答案1
有几种可行的解决方法。无特定顺序:
同步用于
dev-user
和web-user
帐户的 UID 号码。
这可能会对其他地方产生影响,因此需要仔细规划。而不是使用 NFS,而是使用 SMB 导出和挂载文件共享。CIFS
(SMB) 挂载选项支持 和参数uid=arg
,用于设置客户端挂载文件系统上所有文件或目录的 uid/gid。ID 可以指定为名称或数字 uid/gid。gid=arg
forceuid
NFSv4 允许 ID 映射和转换。例如,请参阅
man idmand.conf
和将本地用户的 UID 和 GID 映射到挂载的 NFS 共享
例如,这应该允许您在您的网络服务器上使用:# /etc/idmapd.conf ... [Static] [email protected] = web-user