実際の時刻と1分ちょっとずれているUbuntuサーバーがあります。 timedatectlを実行すると、次のようになります。
Local time: Tue 2018-04-24 14:47:57 MDT
Universal time: Tue 2018-04-24 20:47:57 UTC
RTC time: Tue 2018-04-24 20:47:57
Timezone: America/Denver (MDT, -0600)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: yes
Last DST change: DST began at
Sun 2018-03-11 01:59:59 MST
Sun 2018-03-11 03:00:00 MDT
Next DST change: DST ends (the clock jumps one hour backwards) at
Sun 2018-11-04 01:59:59 MDT
Sun 2018-11-04 01:00:00 MST
私の理解では、NTPを使用して同期する必要があります。 ntpが正しく機能していない可能性があります。 ntpq -pを実行すると、次のようになります。
remote refid st t when poll reach delay offset jitter
======================================================================
propjet.latt.ne .INIT. 16 u - 1024 0 0.000 0.000 0.000
time-a-g.nist.g .INIT. 16 u - 1024 0 0.000 0.000 0.000
linode227395.st .INIT. 16 u - 1024 0 0.000 0.000 0.000
dev.smatwebdesi .INIT. 16 u - 1024 0 0.000 0.000 0.000
pugot.canonical .INIT. 16 u - 1024 0 0.000 0.000 0.000
最後に同期したのがいつで、どのサーバーからのものかを知る方法はありますか?また、今すぐ同期を強制して問題を解決するにはどうすればよいですか(日付を手動で設定できることはわかっていますが、完全に正しくないため、実際に同期を修正したいと思います)。
Ubuntu 16.04以降、systemdの一部であるtimesyncdは、日付/時刻の同期を(そのまま)担当しています。 systemctl
を使用してそのステータスを確認できます。
$ systemctl status systemd-timesyncd.service
● systemd-timesyncd.service - Network Time Synchronization
Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled)
Drop-In: /lib/systemd/system/systemd-timesyncd.service.d
└─disable-with-time-daemon.conf
Active: active (running) since Sun 2018-08-05 10:14:44 EDT; 11min ago
Docs: man:systemd-timesyncd.service(8)
Main PID: 3714 (systemd-timesyn)
Status: "Synchronized to time server 108.59.2.24:123 (0.debian.pool.ntp.org)."
CGroup: /system.slice/systemd-timesyncd.service
└─3714 /lib/systemd/systemd-timesyncd
Aug 05 10:14:44 pi-hole systemd[1]: Starting Network Time Synchronization...
Aug 05 10:14:44 pi-hole systemd[1]: Started Network Time Synchronization.
Aug 05 10:14:45 pi-hole systemd-timesyncd[3714]: Synchronized to time server 108.59.2.24:123 (0.debian.pool.ntp.org).
またはjournalctl
を通じて:
$ journalctl -u systemd-timesyncd
-- Logs begin at Thu 2016-11-03 13:16:42 EDT, end at Sun 2018-08-05 10:20:01 EDT. --
Aug 05 10:14:44 pi-hole systemd[1]: Starting Network Time Synchronization...
Aug 05 10:14:44 pi-hole systemd[1]: Started Network Time Synchronization.
Aug 05 10:14:45 pi-hole systemd-timesyncd[3714]: Synchronized to time server 108.59.2.24:123 (0.debian.pool.ntp.org).
systemd/clock
もご覧ください。
$ stat /var/lib/systemd/clock
File: /var/lib/systemd/clock
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: b302h/45826d Inode: 18750 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 100/systemd-timesync) Gid: ( 103/systemd-timesync)
Access: 2018-08-05 10:22:13.838262405 -0400
Modify: 2018-08-05 10:22:13.838262405 -0400
Change: 2018-08-05 10:22:13.838262405 -0400
Birth: -
このファイルのアクセス/変更/変更時刻は、systemd-timesyndが最後に触れた時刻を示します。
直接同期を強制する方法はないようです。ただし、systemd-timesyncd
サービスを再起動すると、実際には再同期がトリガーされます。
$ systemctl restart systemd-timesyncd
これはログで確認できます。
$ journalctl -u systemd-timesyncd
-- Logs begin at Thu 2016-11-03 13:16:42 EDT, end at Sun 2018-08-05 10:44:37 EDT. --
Aug 05 10:14:44 pi-hole systemd[1]: Starting Network Time Synchronization...
Aug 05 10:14:44 pi-hole systemd[1]: Started Network Time Synchronization.
Aug 05 10:14:45 pi-hole systemd-timesyncd[3714]: Synchronized to time server 108.59.2.24:123 (0.debian.pool.ntp.org).
Aug 05 10:44:37 pi-hole systemd[1]: Stopping Network Time Synchronization...
Aug 05 10:44:37 pi-hole systemd[1]: Stopped Network Time Synchronization.
Aug 05 10:44:37 pi-hole systemd[1]: Starting Network Time Synchronization...
Aug 05 10:44:37 pi-hole systemd[1]: Started Network Time Synchronization.
Aug 05 10:44:37 pi-hole systemd-timesyncd[4157]: Synchronized to time server 208.75.88.4:123 (0.debian.pool.ntp.org).
最後の行は私の再起動からです。
これがsystemd-timesyncd
構成ファイル/etc/systemd/timesyncd.conf
のこれらのプロパティを介してNTPサーバーをポーリングする間隔を制御できます。
PollIntervalMinSec=, PollIntervalMaxSec= The minimum and maximum poll intervals for NTP messages. Each setting takes a time value (in seconds). PollIntervalMinSec= must not be smaller than 16 seconds. PollIntervalMaxSec= must be larger than PollIntervalMinSec=. PollIntervalMinSec= defaults to 32 seconds, and PollIntervalMaxSec= defaults to 2048 seconds.
上記は2017年後半に追加されたようです- timesync:make poll interval configurable#7268 。