当命令挂起时

NIS 客户机节点上出现的最常见问题是命令挂起。 命令可能显示为挂起,即使系统似乎正在正常运行也是如此。 在这种情况下,可以在控制台上生成类似以下内容的消息:

NIS: server not responding for domain domainname. Still trying

此错误消息指示本地机器上的 伊普宾德 守护程序无法与给定域中的 伊普瑟夫 守护程序进行通信,因为运行 伊普瑟夫 守护程序的系统发生故障。 如果网络或 NIS 服务器超负荷,而 伊普瑟夫 守护程序在超时时间段内无法将响应返回给 伊普宾德 守护程序,那么也可能发生此情况。

在这些情况下,您网络上的所有其他 NIS 客户机都显示相同或相似的问题。 该条件通常是临时的。 在 NIS 服务器机器重新引导和 伊普瑟夫 守护程序重新启动时,或者在 NIS 服务器和网络上的负载减少时,将清除这些消息。

如果 伊普宾德 守护程序正在与 伊普瑟夫 守护程序通信,并且 NIS 服务器未超负荷,那么可能存在下列其中一个问题:

  • NIS 客户端机器上的 域名 未设置或设置不正确。 客户机必须使用 NIS 服务器可以识别的域名。 域名是区分大小写的,最初设置为小写字母。 如果是这种情况,请正确设置域。
  • 您的本地网络可能没有 NIS 服务器机器。 NIS 客户机绑定到服务器的一种方法是在网络上广播以将服务器绑定到该网络。 这样做的缺点是它仅在子网上工作,并且在服务器停止并且客户机尝试重新绑定时,可能会导致流量暴潮。 另一种方法是使用 伊普塞 命令来指定要绑定到的 NIS 服务器。 这具有允许客户机绑定到远程网络上的服务器的优点,但每次重新引导后都必须重复执行此操作。 首选方法是创建 /var/yp/binding/<域名>/ypservers 文件。 此文件包含要尝试绑定至的服务器 IP 地址的列表,每行一个服务器 IP 地址。 客户机将尝试绑定到其中一个指定的服务器,然后再尝试使用广播找到一个服务器。 如果文件中也列出了当前已关闭的绑定服务器,那么缺省情况下客户机将尝试与该服务器联系。 但是,如果 YPBIND_SKIP 环境变量在启动 ypbind 守护程序之前设置为 1 (通常在 /etc/environment 文件中设置) ,那么将不会再次联系当前关闭的服务器。
  • NIS 服务器可能未启动并正在运行。 请检查本地网络上的其他机器。 如果多个客户机同时出现问题,那么服务器可能是原因。
    在正常工作的客户机系统上,请运行 伊普特 命令。 如果 伊普特 命令从不返回答案,请停止该命令。 然后在 NIS 服务器上输入以下内容:
    ps -ef | grep yp

    请查找 伊普瑟夫伊普宾德 进程。 如果服务器的 伊普宾德 守护程序未在运行,请使用 启动和停止 NIS 守护程序中的指示信息启动守护程序。

    如果 伊普瑟夫 进程正在运行,请在 NIS 服务器机器上运行 伊普特 命令。 如果此命令未返回任何应答,请按照其中的指示信息停止并重新启动 伊普瑟夫 守护程序。