Seit systemd Version 213 ist ein Dienst mit dem Namen timesyncd enthalten, welcher es ermöglicht die Uhrzeit des lokalen Systems mit einem Netzwerkzeitserver zu synchronisieren.
Im Vergleich zu einem "echten" NTP-Server ist in diesem Dienst nur die Clientfunktionalität umgesetzt.
Der aktuelle Zustand kann mit dem Tool
timedatectlabgefragt werden. Im Folgenden ist ein Beispiel der Ausgabe zu sehen. Anhand dieser ist ersichtlich, dass die Zeit momentan noch nicht synchronisiert wurde.
$ timedatectl
Local time: Wed 2014-10-29 12:13:26 UTC
Universal time: Wed 2014-10-29 12:13:26 UTC
RTC time: Sat 2000-01-01 20:02:58
Time zone: UTC (UTC, +0000)
NTP enabled: yes
NTP synchronized: no
RTC in local TZ: no
DST active: n/a
Falls die Zeitsynchronisation per NTP noch nicht aktiviert muss dies zunächst mit dem folgenden Befehl aktiviert werden.
$ sudo timedatectl set-ntp true
Die zu verwendenden NTP-Server können über die Datei
/etc/systemd/timesyncd.confkonfiguriert werden. Dazu ist es notwendig die Zeilen mit
NTPund
FallbackNTPeinzukommentieren. Die bei
NTPangegeben Server werden normalerweise Verwendet. Ist keiner bei NTP angegeben Server erreichbar wird auf die unter FallbackNTP angegebenen zurückgegriffen.
# 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]
NTP=0.de.pool.ntp.org 1.de.pool.ntp.org 2.de.pool.ntp.org
FallbackNTP=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org
Über den Statusbericht des
timesyncdkann herausgefunden werden, mit welchen Server der Dämon die Zeit synchronisiert.
$ systemctl status systemd-timesyncd
* systemd-timesyncd.service - Network Time Synchronization
Loaded: loaded (/usr/lib/systemd/system/systemd-timesyncd.service; enabled)
Active: active (running) since Wed 2014-10-29 12:29:27 UTC; 2 months 8 days ago
Docs: man:systemd-timesyncd.service(8)
Main PID: 19219 (systemd-timesyn)
Status: "Using Time Server 192.168.0.1:123 (192.168.0.1)."
CGroup: /system.slice/systemd-timesyncd.service
`-19219 /usr/lib/systemd/systemd-timesyncd
Oct 29 12:29:27 alarm systemd[1]: Started Network Time Synchronization.
Oct 29 12:29:27 alarm systemd-timesyncd[19219]: Using NTP server 192.168.0.1:3 (192.168.0.1).
Jan 04 10:05:49 alarm systemd-timesyncd[19219]: interval/delta/delay/jitter/drift 32s/+5952981.812s/0.002s/0.000s/+0ppm
Jan 04 10:06:21 alarm systemd-timesyncd[19219]: interval/delta/delay/jitter/drift 64s/+0.003s/0.001s/0.001s/+0ppm
Ist die Synchronisation erfolgreich, dann spiegelt sich das auch in der Statusanzeige wieder.
$ timedatectl
Local time: Tue 2015-01-04 10:06:55 UTC
Universal time: Tue 2015-01-04 10:06:55 UTC
RTC time: Sat 2000-01-01 20:20:06
Time zone: UTC (UTC, +0000)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: n/a
Mit Hilfe von
timedatectllässt sich auch die Zeitzone einstellen. Wer unsicher ist, welche Zeitzonen es gibt, kann sich alle zur Verfügung stehenden Zonen mit folgendem Befehl anzeigen lassen.
$ timedatectl list-timezones
Anschließend kann die Zeitzone wie folgt konfiguriert werden.
$ sudo timedatectl set-timezone 'Europe/Berlin'
Nach der erfolgreichen Konfiguration wird die lokale Zeit und auch der Beginn und das Ende der Sommer- bzw. Winterzeit aufgeführt.
$ timedatectl
Local time: Tue 2015-01-04 11:07:32 CET
Universal time: Tue 2015-01-04 10:07:32 UTC
RTC time: Sat 2000-01-01 20:20:43
Time zone: Europe/Berlin (CET, +0100)
NTP enabled: yes
NTP synchronized: yes
RTC in local TZ: no
DST active: no
Last DST change: DST ended at
Sun 2014-10-26 02:59:59 CEST
Sun 2014-10-26 02:00:00 CET
Next DST change: DST begins (the clock jumps one hour forward) at
Sun 2015-03-29 01:59:59 CET
Sun 2015-03-29 03:00:00 CEST
Mit dem Befehl
`hwclock`kann die Hardwareuhr mit der aktuellen Systemezeit synchronisiert werden, so dass die Uhrzeit auch beim nächsten Reboot korrekt ist.
$ hwclock -w
Links
- Webseite: Arch Linux (englisch)
- Webseite: Arhc Linux: systemd-timesyncd (englisch)