web-dev-qa-db-ja.com

ntpdが正しい時刻を更新しない

Pool.ntp.orgと同期するようにUbuntuサーバーを構成しようとしています。このガイドに従う https://help.ubuntu.com/community/UbuntuTime

Ntp.confを次のように構成しました

cat /etc/ntp.conf
# /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help

driftfile /var/lib/ntp/ntp.drift


# Enable this if you want statistics to be logged.
statsdir /var/log/ntpstats/

statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable


# You do need to talk to an NTP server or two (or three).
server 0.north-america.pool.ntp.org
server 1.north-america.pool.ntp.org
server 2.north-america.pool.ntp.org
server 3.north-america.pool.ntp.org


# Access control configuration; see /usr/share/doc/ntp-doc/html/accopt.html for
# details.  The web page <http://support.ntp.org/bin/view/Support/AccessRestrictions>
# might also be helpful.
#
# Note that "restrict" applies to both servers and clients, so a configuration
# that might be intended to block requests from certain clients could also end
# up blocking replies from your own upstream servers.

# By default, exchange time with everybody, but don't allow configuration.
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery

# Local users may interrogate the ntp server more closely.
restrict 127.0.0.1
restrict ::1

# Clients from this (example!) subnet have unlimited access, but only if
# cryptographically authenticated.
#restrict 192.168.123.0 mask 255.255.255.0 notrust


# If you want to provide time to your local subnet, change the next line.
# (Again, the address is an example only.)
#broadcast 192.168.123.255

# If you want to listen to time broadcasts on your local subnet, de-comment the
# next lines.  Please do this only if you trust everybody on the network!
#disable auth
#broadcastclient

次に、システムをはるか遠くに更新しました

date -s "2 OCT 2006 18:00:00"

そしてntpdを再起動しようとしましたが、時間はまだ2006年です。

ntpq --peers; date
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 dev1-c.sje007.i 209.81.9.7       2 b   48   64  177   80.623  1205991 1100914
 ox.eicat.ca     139.78.135.14    2 b   18   64  377   24.743  1205991 1019249
 ntp1.Housing.Be 169.229.128.214  3 b   62   64  177   94.714   -5.160 6962796
 ns1.your-site.c 10.1.5.2         3 b   26   64  177   10.913   -9.521 6962796
Mon Oct  2 18:02:29 UTC 2006

なぜntpが動作しないのですか?

3
Maxim Veksler

現地時間とプール時間の特定の差を超えると、ntpは更新を「スルー」します。つまり、常にほとんど変更を実行しません。これは、システムの動作が完全にブロックから飛び出さないようにするためです。これはmanページからの抜粋です:

-x通常、オフセットがステップしきい値(デフォルトでは128ミリ秒)未満の場合、時間はスルーされ、しきい値を超える場合はステップされます。
このオプションは、しきい値を600秒に設定します。 、これは、時計を手動で設定するための精度ウィンドウ内に十分に収まっています。注:
の一般的なUnixカーネルのスルーレートは0.5 ms/sに制限されているため、調整の1秒ごとに2000秒の償却間隔が必要です。したがって、
の調整は600秒ほどかかり、完了するまでにほぼ14日かかります。このオプションは、-gおよび-qオプションとともに使用できます。注:カーネル時間規律
は、このオプションでは無効になります。

あなたの現在の時差では、追いつくのに長い時間がかかります。差を小さくするために手動で変更してから、これが機能しているかどうかを確認することをお勧めします。

4
wolfgangsz

Ntpdが時間を調整するのが遅いか、エラーがある可能性があります。/var/log/daemon.logまたは/ var/log/syslog(grep -i ntpd /var/log/daemon.log)。

迅速な解決策は、cronジョブを追加することですntpdate 0.pool.ntp.org

0
lg.