同步服务器时间

同步服务器时间

我安装了 NTP 并将其设置为每小时一次的 cron,但它显示的时间比我的手机和 PC 都显示的时间晚了 5 分钟。我有没有办法验证它是否正在尝试同步时间?

它正在与...同步。

pool.ntp.org ntp.ubuntu.com (或任何 ubuntu 网址)

答案1

您可以运行“ntpdate 0.us.pool.ntp.org”或任何您希望使用的服务器,以验证您是否能够同步。此命令的输出应显示远程主机上的服务器以及本地计算机上的差异。

如果您正在使用 ntpd,并且它作为守护进程运行,则需要先停止它。此外,如果您正在运行 ntpd,则不需要 cronjob,因为它会自行保持时间同步。

如果 ntpd 确实正在运行,则可能只是时间步进不够快。如果您当前的系统时间相差很大,则它不会进行巨大的时间跳跃来让您同步。

答案2

如果是服务器,请使用 ntpd。对于 ubuntu,请使用以下命令安装:

sudo aptitude install ntp

您可以通过程序来检查它ntpq。使用方法如下:

user@myhost:~$ ntpq
ntpq> peer
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 europium.canoni 193.79.237.14    2 b   48   64  377  141.805   42.254   9.901

这说明它已与一台主机同步,并且与该主机相差约 42 毫秒。如果未同步,您可能会看到像 0 这样的值,这意味着它无法连接到您指定的主机。您还可能会看到一个巨大的偏移量;NTP 在看到太大的时间差时会感到害怕,因此您必须先使用 ntpdate 手动设置时钟,例如sudo ntpdate tick.usno.navy.mil

答案3

cronjob 是什么?除非它以 2&>/dev/null 或类似内容结尾,否则它应该每小时将一些输出通过电子邮件发送到顶部的 MAILTO=" 地址,或发送到 root(如果不存在)(尝试删除结尾部分以确保它是否存在)。

要验证它是否正在运行,请检查 /var/log/cron。

相关内容