系统日志中出现大量 rpc.idmapd 错误

系统日志中出现大量 rpc.idmapd 错误

我对系统日志中的一些错误消息越来越担心——它显示:

7 月 3 日 15:16:38 web rpc.idmapd[14535]: nss_getpwnam: 名称“nobody”未映射到域“mydomain.com”

我检查过,我的主机名正确,为 mydomain.com,我甚至在 /etc/hostname 中添加了有效条目。我已编辑 /etc/idmapd.conf 以反映此域名,此错误消息日志每 10 分钟出现一次,这令人沮丧,我不知道为什么或是什么原因造成的,nfs 服务器工作正常,有正确的条目,现在日志中有消息。

我正在使用 centos6

-- 当然,我已经用我的真实域名替换了 mydomain.com

答案1

我在 2 个 NFSv4 客户端上遇到了同样的问题,它与某些文件和目录具有未知的 uid 和 gid 有关。这些文件是从具有完全不同用户列表的旧服务器复制而来的。在 nfs 服务器上,它们将显示数字 uid/gid。但在客户端上,idmapd 将它们映射到用户nobody和组nogroup,但发出您在日志文件中提到的警告。

我认为你应该检查你的 nfs 导出目录是否包含此类文件。我发现最简单的方法是使用 find 命令:

find /path/to/your_nfs_dir/ -user nobody -or -group nogroup -ls

如果您想让这些文件属于某个现有用户/组,您甚至可以立即更改它们:

find /path/to/your_nfs_dir/ -user nobody -exec chown myuser {} \;
find /path/to/your_nfs_dir/ -group nogroup -exec chgrp mygroup {} \;

您需要在其中一个客户端上执行此操作,因为在 nfs 服务器上,文件将不会被识别为属于 nobody/nogroup。

答案2

我也遇到了这个问题,我能够确定 idmapd 映射问题部分是客户端机器上的内核问题。

首先,在 nfs 服务器上,日志显示 nfs 客户端向 idmapd 提供的是某些用户的数字 ID,而不是名称。此行为与客户端上的内核有关,内核为 2.6.32-431.el6.centos.plus.x86_64。

它失败了,但是使用 2.6.32-358.14.1.el6.centos.plus.x86_64,uid 映射可以工作,但是 gid 映射仍然失败。

我能够使 uid 和 gid 映射正常工作的唯一方法是恢复到 NFSv3。

相关内容