更新日 2019/04/11 10:34
WebClass サーバの時刻設定について説明します。
前提
- Debian 8以降およびRHEL7 以降では systemd が導入されており、そのサブセットの timedatectl コマンドを利用することができます
- systemd のサブセットの systemd-timesyncd が ntp 同期機能を持ちますが、WebClass サーバでは ntpd を使用します。
- Debian 8 または 9 を利用している場合は ntp 4.2 がインストールされます
- RHEL7 を利用している場合は chrony と ntp がどちらもインストールされます
- RHEL7 のデフォルトの時刻同期デーモンは chrony です。
- chrony は ntp より後発のデーモンで、同期速度が速く、頻繁にネットワークから切れたりサスペンドするようなマシンで有効です
設定確認
以下のコマンドでおおよその設定状況が確認できます。
root@debian8:~# timedatectl Local time: Mon 2019-04-08 10:00:12 JST Universal time: Mon 2019-04-08 01:00:12 UTC RTC time: Mon 2019-04-08 10:00:12 Time zone: Asia/Tokyo (JST, +0900) NTP enabled: no NTP synchronized: yes RTC in local TZ: no DST active: n/a
NTP enabled が no になっているのは、systemctl-timesyncd に対して ntp 同期設定を行なっていないためです。ntpd をインストールして動かしていれば、ntpd がシステムクロックを同期させてくれるので問題ありません。何れにせよ時刻同期できていれば NTP syncronized が yes になります。
root@debian8:~# ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== +ntp-b3.nict.go. .NICT. 1 u 17 64 7 13.660 -1.149 3.735 *ntp-a2.nict.go. .NICT. 1 u 77 64 16 13.373 -6.548 3.408 +30-213-226-103- .PPS. 1 u 53 64 5 42.529 -3.167 3.163 -ntp1.jst.mfeed. 133.243.236.17 2 u 50 64 17 18.364 -6.511 4.934
ntpq の出力結果では、同期しているサーバには * のマークが、同期可能なサーバには + のマークがつきます。
NTP の設定
debian のデフォルト設定では /etc/ntp.conf では以下のようにサーバ指定されています。
server 0.debian.pool.ntp.org iburst server 1.debian.pool.ntp.org iburst server 2.debian.pool.ntp.org iburst server 3.debian.pool.ntp.org iburst
同期する NTPサーバは server もしくは pool で指定できます。pool で指定すると、DNS ラウンドロビンにより複数のIP登録がある場合は、自動的にそれらをまとめてすべて登録します。server のように1台ずつバラバラに指定する必要がなくなります。
最後の iburst は、初回起動時に急いで同期させるオプションになります。
時刻を合わせる
iburst の指定を付けてNTPのサーバの指定ができていれば、ntp の再起動をするとすぐに時刻が揃うと思います。