我正在尝试将我的 Ubuntu 12.04.5 实例与 Google 时间服务器同步time{1,4}.google.com
,我可以使用 ntpdate 和 ntpd 成功查询,但一旦我启动 ntp 作为服务,它就无法联系时间服务器。不确定为什么我可以做其中一个,但不能做另一个?
使用 ntpdate 进行查询有效:
$ ntpdate time1.google.com
14 Feb 10:47:28 ntpdate[17245]: adjust time server 216.239.35.0 offset 0.015588 sec
与使用 ntpd 查询一样:
$ ntpd -q -g -c /etc/ntp.conf
ntpd: time slew -0.004094s
但是,一旦启动 ntpd 服务,我在 ntpq 中看到的只有 INIT:
$ service ntp start
$ ntpq -n
ntpq> peers
remote refid st t when poll reach delay offset jitter
==============================================================================
<local IP> .INIT. 16 u - 64 0 0.000 0.000 0.000
216.239.35.0 .INIT. 16 u - 64 0 0.000 0.000 0.000
216.239.35.4 .INIT. 16 u - 64 0 0.000 0.000 0.000
216.239.35.8 .INIT. 16 u - 64 0 0.000 0.000 0.000
216.239.35.12 .INIT. 16 u - 64 0 0.000 0.000 0.000
从这个状态开始它就不再变化了。我的 ntp.conf 文件完全由 Google 服务器组成,没有其他内容(没有限制行):
$ cat /etc/ntp.conf
server time1.google.com
server time2.google.com
server time3.google.com
server time4.google.com
答案1
15 分钟后回来再检查。
客户端通常需要几分钟才能同步到服务器。
首次启动时,如果不存在频率文件,守护进程将进入特殊模式以校准频率。这需要 900 秒,在此期间时间不受限制。
http://doc.ntp.org/current-stable/debug.html
调试页面还显示了一些需要查看的变量,特别是命令associations
。
答案2
设法解决了这个问题;这是由于初始化脚本硬编码了一个与标准配置文件不同的配置文件,这意味着我的配置文件更新没有效果,并且restrict
它实际使用的配置文件中的值是不正确的。