新しいNTPDインストールは同期されていません

新しいNTPDインストールは同期されていません

ntpdを使用してRaspberry PiでNTPを操作しようとしています。 systemd-timesyncdを無効にし、次のようにntpをインストールしました。

$ sudo apt-get install ntp

ただし、インストール後はntpどのサーバーとも同期されません。 ntp 再インストール後、たまに 1~2 台のサーバに接続して同期されることがあります。ただし、リセット(sudo service ntp restart)後は、どのサーバーにも接続できなくなります。

私はRaspberry Pi 2モデルBとRaspberry Pi 3モデルB +を使用しています。両方のデバイスで動作しません。私もRaspberry Pi 3モデルBを持っていますが、期待どおりに動作します。 Raspberry Piはすべて同じネットワークに接続されています(したがって、これはネットワークファイアウォールの障害にはなりません)。ラズベリーパイはRaspbian Busterで動作します。

時々正しく同期されると、ntpd -p1つまたは2つのサーバーのみが実行され、表示されます。ただし、動作するRaspberry Piは4つ以上のサーバーと同期できます。 NTPは以前Raspberry Pi 2モデルBで作業していましたが、システムを変更せずに動作を停止しました。その後、NTPを完全に再インストールしましたが、成功しませんでした(sudo apt-get purge --autoremove ntp)。これらの結果が使用されます/etc/ntp.conf

systemd-timesyncdこのシステムをプライマリシステムのサーバーとして使用したいので使用できません。systemd-timesyncd正常に動作しているようですが、デバイス間で1ms未満のクロック同期を達成するにはサーバーが必要です。

NTPステータス

以下にNTPの状態と結果を示します。ntpq -pn

再起動後のntpステータス:

pi@raspberrypi:~ $ sudo service ntp status
● ntp.service - Network Time Service
   Loaded: loaded (/lib/systemd/system/ntp.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2020-04-24 14:48:10 CEST; 5s ago
     Docs: man:ntpd(8)
  Process: 2837 ExecStart=/usr/lib/ntp/ntp-systemd-wrapper (code=exited, status=0/SUCCESS)
 Main PID: 2843 (ntpd)
    Tasks: 2 (limit: 2200)
   Memory: 1.0M
   CGroup: /system.slice/ntp.service
           └─2843 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 109:114

Apr 24 14:48:10 raspberrypi ntpd[2843]: Listen normally on 3 eth0 192.168.0.103:123
Apr 24 14:48:10 raspberrypi ntpd[2843]: Listen normally on 4 lo [::1]:123
Apr 24 14:48:10 raspberrypi ntpd[2843]: Listen normally on 5 eth0 [fe80::1ef8:d982:66ac:4214%2]:123
Apr 24 14:48:10 raspberrypi ntpd[2843]: Listening on routing socket on fd #22 for interface updates
Apr 24 14:48:10 raspberrypi ntpd[2843]: kernel reports TIME_ERROR: 0x2041: Clock Unsynchronized
Apr 24 14:48:10 raspberrypi ntpd[2843]: kernel reports TIME_ERROR: 0x2041: Clock Unsynchronized
Apr 24 14:48:11 raspberrypi ntpd[2843]: Soliciting pool server 174.138.9.187
Apr 24 14:48:12 raspberrypi ntpd[2843]: Soliciting pool server 194.5.96.30
Apr 24 14:48:13 raspberrypi ntpd[2843]: Soliciting pool server 162.159.200.123
Apr 24 14:48:14 raspberrypi ntpd[2843]: Soliciting pool server 83.162.149.224

結果ntpq -pn:

pi@raspberrypi:~ $ ntpq -pn
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 0.debian.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.001
 1.debian.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.001
 2.debian.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.001
 3.debian.pool.n .POOL.          16 p    -   64    0    0.000    0.000   0.001

結果ntpstat:

pi@raspberrypi:~ $ ntpstat
unsynchronised
   polling server every 8 s

NTPがサーバーと同期しない理由を知っている人はいますか?

出力sudo ntpdate -qu 0.debian.pool.ntp.org

pi@raspberrypi:~ $ sudo ntpdate -qu 0.debian.pool.ntp.org
server 213.136.0.252, stratum 1, offset 0.017778, delay 0.04608
server 45.159.204.28, stratum 2, offset 0.016319, delay 0.04184
server 83.98.155.30, stratum 2, offset 0.016869, delay 0.04346
server 94.228.220.14, stratum 2, offset 0.017546, delay 0.04454
24 Apr 16:23:17 ntpdate[3139]: adjust time server 213.136.0.252 offset 0.017778 sec

構成/etc/ntp.conf:

pi@raspberrypi:~ $ grep '^[^#]' /etc/ntp.conf
driftfile /var/lib/ntp/ntp.drift
leapfile /usr/share/zoneinfo/leap-seconds.list
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
pool 0.debian.pool.ntp.org iburst
pool 1.debian.pool.ntp.org iburst
pool 2.debian.pool.ntp.org iburst
pool 3.debian.pool.ntp.org iburst
restrict -4 default kod notrap nomodify nopeer noquery limited
restrict -6 default kod notrap nomodify nopeer noquery limited
restrict 127.0.0.1
restrict ::1
restrict source notrap nomodify noquery

結果timedatectl status:

pi@raspberrypi:~ $ timedatectl status
               Local time: Fri 2020-04-24 16:40:05 CEST
           Universal time: Fri 2020-04-24 14:40:05 UTC
                 RTC time: n/a
                Time zone: Europe/Amsterdam (CEST, +0200)
System clock synchronized: no
              NTP service: inactive
          RTC in local TZ: no

ベストアンサー1

問題はのパラメータが必要ですSystem clock synchronisedtimedatectl statusしかし、yes必ずしもそうではありません。

これは次の正しい出力ですtimedatectl status

$ timedatectl status
               Local time: Tue 2020-04-28 11:28:44 CEST
           Universal time: Tue 2020-04-28 09:28:44 UTC
                 RTC time: n/a
                Time zone: Europe/Amsterdam (CEST, +0200)
System clock synchronized: yes
              NTP service: inactive
          RTC in local TZ: no

この問題は、次の手順を実行することで解決できます。

まず削除する必要がありますntpd。そうしないと、systemd-timesyncd問題が発生する可能性があります。これは次のコマンドを使用して実行できます(このコマンドは削除されません/etc/ntp.conf)。

sudo apt-get remove ntp

その後、次のコマンドを実行してntpを有効にし、「systemd-timesyncd」を起動できます。

sudo timedatectl set-ntp yes

コマンドがsystemd-timesyncd自動的に開きます。したがって、systemd-timesyncd停止して無効にする必要があります。これは、次のコマンドを使用して達成できます。

sudo systemctl stop systemd-timesyncd
sudo systemctl disable systemd-timesyncd

ntpdこれで、以下を再インストールできます。

sudo apt-get install ntp

これでntpd、次のコマンドを使用して再起動できます。

sudo service ntp restart

正しく機能していることを確認してください

ntp次のコマンドを実行して、正しく機能していることを確認できます。

ntpq -pn複数のIPを返す必要があります。

ntpstatNTPサーバーと同期しているとマークする必要があります。ntpstat次のコマンドを使用してインストールできます。

sudo apt-get install ntpstat

おすすめ記事