无法使用NTP同步时间
当我尝试使用NTP同步时间时。 使用以下命令
sudo ntpdate -b pool.ntp.org
我得到这个错误说NTP套接字正在使用中 。 如何解决这个问题?
18 Jan 05:53:49 ntpdate[21340]: the NTP socket is in use, exiting
NTP套接字正在使用中,正在退出
表示您正在运行NTP守护程序,通常是通过ntp
程序包运行的守护程序。 您不能有两个应用程序同时调整时钟。
-
首先停止当前运行的NTP守护程序:
sudo service ntp stop
-
运行
ntpdate
命令。 -
再次启动NTP守护程序:
sudo service ntp start
背景
NTP守护程序不会向前或向后移动大步,但对于非常平滑和小的过渡非常有用。 在它正常工作之前,首先使用ntpdate
同步时间,因此。 您可以像这样查询守护程序的状态:
ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== *chime1.surfnet. 194.171.167.130 2 u 59 64 7 3.159 -0.207 0.136 +chime2.surfnet. .GPS. 1 u 59 64 7 6.872 -0.592 0.091 [...] ns1.tudelft.nl .INIT. 16 u - 64 0 0.000 0.000 0.000 +ev001.tilaa.nl 193.67.79.202 2 u 55 64 7 4.038 -0.613 0.110
如果您NTP socket in use
Error NTP socket in use
如下所示:
在那种情况下,只需运行
$ sudo service ntp stop $ sudo ntpdate pool.ntp.org $ sudo service ntp start
你会得到的
或者只是运行
sudo ntpdate -u pool.ntp.org
用ntpd deamon运行来更新
一个常见的问题是人们发现他们的计算机没有在指定的夏令时(夏令时)转换时更新。 一旦被识别,用户就会尝试使用sudo ntpdate -b pool.ntp.org
或类似方法来纠正时间,但却发现NTP已经在运行且根本无效。
在一般情况下,NTP根本无法在DST转换时更正您的时钟。 例如, NTP有拒绝设置时钟的情况 。 在搜索NTP问题时会遇到大量的点击,所以很明显NTP的局限性已经影响了很多人。 我确信任何NTP设计决策都有充分的理由,但这并没有改变这样一个事实:不能信任它总能做到普通用户所期望的。
如果出于某些特定目的对您很重要,请务必检查它。 如果您在转换前不久手动设置正确的时间,那么自动DST转换可能会更幸运。
对于普通用户来说,这是一个难以实验的问题,因为DST每年只发生两次。
如果ntp deamen已安装并运行,您将得到相同的错误,因为您无法同时通过两个程序调整时钟。
如果服务正在运行,它将同步到/etc/ntp.conf中的服务器,因此时间将同步。 最好每晚重启ntp守护进程,这样如果它停止以某种方式每天开始,请在crontab中设置它。
crontab -e @daily sudo service ntp restart >> /tmp/time.log
您可以通过以下命令检查服务器同步的详细信息
ntpq -p