我发现几周前在 Centos5 机器上设置的 ntpd 服务无法正确同步服务器时间。我检测到了超过 5 分钟的偏移量(通过停止 ntpd 并执行 ntpdate)。
设置服务后,我通过 ntpstat 检查了设置:
[xxxx@xxx ~]$ ntpstat -q
synchronised to local net at stratum 11
time correct to within 10 ms
polling server every 1024 s
我每天都重复这个检查,结果总是这个。这个输出不是在告诉我服务器时间是正常的吗?
编辑:这是 ntpq -p 的输出
remote refid st t when poll reach delay offset jitter
==============================================================================
some.name .LOCL. 1 u 685 1024 377 4.978 26263.4 93.465
10.0.1.18 10.1.3.1 2 u 827 1024 377 1.382 26268.8 111.047
10.0.1.21 .INIT. 16 u - 1024 0 0.000 0.000 0.000
*LOCAL(0) .LOCL. 10 l 10 64 377 0.000 0.000 0.001
答案1
尝试ntpq -p
- 这将列出 ntpd 正在使用的对等关联。其中一个应在左边缘标有*
:这是您要同步的那个。如果没有标记(或更糟的是,没有列出),则表示您未同步。如果您愿意深入了解 NTP 协议的棘手部分,ntpq 还可以执行许多其他有用的诊断(请参阅了解ntpq(8)
更多详细信息,以及左边缘中的其他字符的含义)。
请注意,ntpd 不会调整您的时钟(在任何给定的窗口中,它调整时钟的阈值相对较小)。使用该-g
标志启动 ntpd 将使其在启动时进行较大的调整(另一个选项是运行ntpdate -b
以进行初始调整)。
如果您的本地时钟确实很糟糕,您有两个选择:Alexander 建议在 cron 之外运行 ntpdate(这可以解决大量可能的 NTP 问题)或将“恐慌”阈值设置为零,这ntp.conf
将允许守护进程调整时钟而不管偏移量如何。请注意,这两个选项都附带一个警告,即如果您的时间服务器出现问题,它将扰乱您客户端的时钟。