[IT][systemd][timedatectl][自分用メモ] ntpd、chrony以外で時刻同期する方法。

AIX、UNIX、Linux
systemd-timesyncd - ArchWiki

ネットワーク時刻同期といえば、ntpdおよび最近だとchronyになるのでしょうか?
実はSystemdにも時刻同期をする方法があったりします。

確認環境:

$ lsb_release -a
No LSB modules are available.
Distributor ID:  Debian
Description:  Debian GNU/Linux 8.2 (jessie)
Release:   8.2
Codename:    jessie

手順

推奨のsystemdのバージョンは217以上です。
以下のコマンドを実行すると現時点での時刻を確認できます。

$ timedatectl
Local time: Thu 2015-11-05 14:00:07 JST
Universal time: Thu 2015-11-05 05:00:07 UTC
RTC time: Thu 2015-11-05 05:00:00
Time zone: Asia/Tokyo (JST, +0900)
NTP enabled: no
NTP synchronized: no
RTC in local TZ: no
DST active: n/a

systemdのntp機能の有効化には以下のコマンドを実行します。

$ sudo timedatectl set-ntp true

ntp機能が有効になりました。

$ sudo timedatectl status
Local time: Thu 2015-11-05 14:05:19 JST
Universal time: Thu 2015-11-05 05:05:19 UTC
RTC time: Thu 2015-11-05 05:05:07
Time zone: Asia/Tokyo (JST, +0900)
NTP enabled: yes
NTP synchronized: no
RTC in local TZ: no
DST active: n/a

ちなみにntp参照先は以下のファイルで設定することが出来ます。

#  This file is part of systemd.
#
#  systemd is free software; you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as published by
#  the Free Software Foundation; either version 2.1 of the License, or
#  (at your option) any later version.
#
# See timesyncd.conf(5) for details

[Time]
Servers=0.debian.pool.ntp.org 1.debian.pool.ntp.org 2.debian.pool.ntp.org 3.debian.pool.ntp.org

ちなみにFallbackNTPというパラメータがあるのですが、こちらは予備のNTPサーバということになるようです。
jitter等の結果についてはsystemctlコマンドから確認できます。

$ sudo systemctl status systemd-timesyncd.service -l
● systemd-timesyncd.service - Network Time Synchronization
Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled)
Active: active (running) since Thu 2015-11-05 14:03:58 JST; 11min ago
Docs: man:systemd-timesyncd.service(8)
Main PID: 2600 (systemd-timesyn)
Status: "Using Time Server 59.106.180.168:123 (0.debian.pool.ntp.org)."
CGroup: /system.slice/systemd-timesyncd.service
└─2600 /lib/systemd/systemd-timesyncd

Nov 05 14:09:46 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.112s/0.004s/0.007s/+49ppm
Nov 05 14:10:19 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.130s/0.005s/0.007s/+49ppm
Nov 05 14:10:53 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.128s/0.004s/0.007s/+137ppm
Nov 05 14:11:26 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.127s/0.005s/0.007s/+10ppm
Nov 05 14:11:59 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.075s/0.004s/0.022s/+49ppm
Nov 05 14:12:33 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.122s/0.004s/0.050s/-38ppm
Nov 05 14:13:06 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.108s/0.004s/0.048s/+49ppm
Nov 05 14:13:39 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.128s/0.004s/0.047s/-38ppm
Nov 05 14:14:13 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.111s/0.004s/0.047s/+49ppm
Nov 05 14:14:46 dns02 systemd-timesyncd[2600]: interval/delta/delay/jitter/drift 32s/+1.127s/0.004s/0.047s/-38ppm

問い合わせ間隔とか細かいパラメータを指定できないようですが、最近はntpdの脆弱性等も報告されているので、手軽にntpを利用する手段としてはいいのではないでしょうか?

この記事を書いた人

kometchtech

うつ病を患いながら、IT業界の末席にいるおっさんエンジニア。科学計算をしたことがないのに、HPC分野にお邪魔している。興味のある分野で学習したことをblogにまとめつつ、うつ病の経過症状のメモも置いておく日々。じつはRouterboard User Group JPの中の人でもある。 Amazon欲しいものリスト / Arm板を恵んでくれる人募集中

kometchtechをフォローする
タイトルとURLをコピーしました