systemd 213からsystemd-timesyncdというSNTPクライアント機能が追加されて、ntpdやchronyの代わりに使えるようになったんだけど、どうも仮想マシンでは起動しないようになってるようで、VM上のArch Linuxでは使えなかった。
timesyncd: do not start in virtualized environments · 01b85ba · systemd/systemd
使い方
ntpdやchronyを使用している場合は無効にする。
sudo systemctl stop ntp.service
sudo systemctl disable ntp.service
systemd-timesyncdの設定をする。
sudo -e /etc/systemd/timesyncd.conf
[Time]
NTP=ntp.nict.jp
FallbackNTP=time1.google.com time2.google.com time3.google.com time4.google.com
systemd-timesyncdを有効にして起動する。
sudo systemctl enable systemd-timesyncd.service
sudo systemctl start systemd-timesyncd.service
statusでactiveになってればOK
仮想マシンの場合はConditionVirtualization=noに引っかかって起動しない(inactiveになる)。
sudo systemctl status systemd-timesyncd.service