NFS4:对/etc/idmapd.conf 的更改有何影响?

Mik*_*e S 4 linux domain nobody nfs4

我们一直在努力解决以下问题:我们在 RHEL 6.3 客户端上的 NFS4 挂载显示文件所有权为“nobody”,并且我们在 /var/log/ 中看到“nss_getpwnam: name 'blah' does not map into domain 'localdomain'”消息。我们知道修复是为了确保服务器上 /etc/idmapd.conf 文件中的域与客户端上的域匹配。问题是这样的:

如果我们修复了客户端上的域,我们需要重新启动它们才能看到它的工作。重新启动 nscd、nfs、rpcbind、rpcgssd、rpcidmapd 或 rpcsvcgssd 不会启用此修复程序。这些也不会与分区的 umount/mount 协同工作。事实上,在我们解决问题并重新启动客户端后,我们关闭了 rpcidmapd 并且正确的名称映射仍然发生在机器上。

为什么我们需要重新启动机器才能启用对域的 idmapd.conf 更改?内核是否抓住了某些东西?谢谢。

kof*_*ann 8

内核向上调用 idmapd 守护进程以获取映射。由于这是非常昂贵的操作,因此会缓存结果。清理缓存运行:

# nfsidmap -c
Run Code Online (Sandbox Code Playgroud)

RHEL6.3(和克隆)中可用的命令和 nfs-utils 包的一部分。