问题

执行命令“ntpq -pn”返回错误:

# ntpq -p
Name or service not known 《--- 名称或者服务未知

在某些情况下,我们可能还会遇到如下所示的错误:

# ntpq -pn
Servname not supported for ai_socktype 《-ai_socktype不支持Servname
“ntpq -pn”命令返回错误"Name or service not known"
之路 on it Road.com

解决方案

如果系统无法为 ntpq 命令解析“localhost”,则会看到“名称或者服务未知”错误。
确保我们在 /etc/hosts 文件中有指向“127.0.0.1 localhost”的指针。

  1. 修复/etc/hosts文件,将127.0.0.1映射到localhost,即/etc/hosts中必须有一行以“127.0.0.1”开头并包含“localhost”。

请注意,如果此行包含除 localhost 之外的其他主机别名,则完全没问题。
例子:

# vi /etc/hosts
127.0.0.1   localhost localhost.localdomain myserver myserver.mydomain

也就是说,在 RHEL6 中,名称“localhost”映射到 127.0.0.1 和 IPv6 环回 ::1,因此虽然在 RHEL6 中删除 127.0.0.1 行是一个坏主意,但它可能不会导致 ntpq 失败。

  1. 还要确保我们在 /etc/services 文件中有指向 ntp 的指针。
# vi /etc/services
ntp             123/tcp
ntp             123/udp                         # Network Time Protocol
日期:2020-09-17 00:14:08 来源:oir作者:oir