我正在解决我的一台NTP服务器上的问题。 这台服务器似乎违背了逻辑,而我正在试图排除故障。 尽pipe硬件时钟准确,但大约每162秒钟,系统时钟恢复到(当前时间 – 112秒)。 无论ntpd是否在运行,都会发生这种情况。当时钟发生偏斜时,硬件时钟仍然会报告准确的时间(直到某些时间,当hwclock被同步回系统时钟时)。
我把一个小小的一行放在一起来展示问题:
$ date ; sudo /sbin/service ntpd stop ; date; sudo ntpdate -u time.nist.gov ; sudo /sbin/hwclock --systohc --utc ; sudo /sbin/hwclock --hctosys --utc ; i=0 ; ss=$(/bin/date +%s) ; while [ $i -lt 240 ] ; do date ; ts=$(($(/bin/date +%s)-$ss)) ; /sbin/hwclock --show --utc ; echo "seconds since last sync: $ts" ; sleep 1 ; ((i++)) ; done Tue Jan 6 03:44:41 UTC 2015 Shutting down ntpd: [ OK ] Tue Jan 6 03:44:41 UTC 2015 6 Jan 03:46:34 ntpdate[13092]: step time server 24.56.178.140 offset 112.261660 sec Tue Jan 6 03:46:37 UTC 2015 Tue 06 Jan 2015 03:46:38 AM UTC -0.994306 seconds seconds since last sync: 0 Tue Jan 6 03:46:39 UTC 2015 Tue 06 Jan 2015 03:46:40 AM UTC -0.995661 seconds seconds since last sync: 2 Tue Jan 6 03:46:41 UTC 2015 Tue 06 Jan 2015 03:46:42 AM UTC -0.995526 seconds seconds since last sync: 4 Tue Jan 6 03:46:43 UTC 2015 Tue 06 Jan 2015 03:46:44 AM UTC -0.995515 seconds seconds since last sync: 6 Tue Jan 6 03:46:45 UTC 2015 Tue 06 Jan 2015 03:46:46 AM UTC -0.995465 seconds seconds since last sync: 8 Tue Jan 6 03:46:47 UTC 2015 Tue 06 Jan 2015 03:46:48 AM UTC -0.995293 seconds seconds since last sync: 10 Tue Jan 6 03:46:49 UTC 2015 Tue 06 Jan 2015 03:46:50 AM UTC -0.995207 seconds
这会继续一点点,但最终系统时钟会倒退112秒:
Tue Jan 6 03:47:07 UTC 2015 Tue 06 Jan 2015 03:47:08 AM UTC -0.995297 seconds seconds since last sync: 30 Tue Jan 6 03:45:16 UTC 2015 Tue 06 Jan 2015 03:47:10 AM UTC -0.995259 seconds seconds since last sync: -81 Tue Jan 6 03:45:18 UTC 2015 Tue 06 Jan 2015 03:47:12 AM UTC -0.996067 seconds seconds since last sync: -79 Tue Jan 6 03:45:20 UTC 2015 Tue 06 Jan 2015 03:47:14 AM UTC -0.996148 seconds seconds since last sync: -77
一些小的细节:这个系统运行CentOS 5.11,是裸机(不是VM),正常运行时间是23天,这个问题在几个月前就开始了。 到目前为止,我还没有真正的时间看这个,所以我不确定在这个服务器启动的时候是否有一些相关的更新/活动。
所以,我想我的问题是ntpd除了可以更新系统时钟? 我已经validation了没有计划的触摸时钟的cron作业,并且据我所知,没有运行的守护进程也应该触摸时钟。
事实certificate,这是主机绑定到Active Directory域控制器上的时间漂移。 在DC上固定时间并将其设置为同步到ntp服务器。 同样的主机使用的版本没有更新任何日志,指出时间的变化,这是很难排除故障。