LPIC102/108.1 Systemzeit: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
K Textersetzung - „ “ durch „ “ |
||
(80 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
==Wichtigste Wissensgebiete== | |||
# Systemzeit und -datum setzen | # Systemzeit und -datum setzen | ||
# die Hardwareuhr auf die korrekte Zeit in UTC setzen | # die Hardwareuhr auf die korrekte Zeit in UTC setzen | ||
# die korrekte Zeitzone einstellen | # die korrekte Zeitzone einstellen | ||
# grundlegende NTP-Konfiguration unter Verwendung von ntpd und chrony | # grundlegende ''NTP-Konfiguration'' unter Verwendung von ''ntpd'' und ''chrony'' | ||
# Wissen über den Gebrauch von pool.ntp.org | # Wissen über den Gebrauch von ''pool.ntp.org'' | ||
# Kenntnis des ''ntpq-Kommandos''<br> | |||
# Kenntnis des ntpq-Kommandos | |||
Liste wichtiger Dateien, Verzeichnisse und Anwendungen: | |||
* /usr/share/zoneinfo | * /usr/share/zoneinfo | ||
* /etc/timezone | * /etc/timezone | ||
Zeile 26: | Zeile 19: | ||
* ntpdate | * ntpdate | ||
* chronyc | * chronyc | ||
* pool.ntp.org | * pool.ntp.org<br> | ||
==Manuelle Konfiguration der Systemzeit== | |||
Die manuelle Konfiguration der Systemzeit erfolgt über das Kommando date. Wenn | Die manuelle Konfiguration der Systemzeit erfolgt über das Kommando ''date''. Wenn | ||
Sie date ohne Parameter starten, werden das aktuelle Datum und die Uhrzeit ausgegeben. | Sie ''date'' ohne Parameter starten, werden das aktuelle Datum und die Uhrzeit ausgegeben. | ||
'' | ''# date'' | ||
''Di 24. Apr 17:54:52 CEST 2018'' | ''Di 24. Apr 17:54:52 CEST 2018'' | ||
''die Uhrzeit'' mittels ''date'' ändern: | |||
'' | ''# date -s 1755'' | ||
''Di 24. Apr 17:55:00 CEST 2018'' | ''Di 24. Apr 17:55:00 CEST 2018'' | ||
Die Uhr | Die Uhr wurde nun erfolgreich auf 17.55 Uhr eingestellt. | ||
Für bessere Darstellungen kann man ''date +'' verwenden | |||
Das sieht z. B. so aus: | Das sieht z. B. so aus:<br> | ||
'' # date "+Heute ist der %d.%m.%Y. Das ist der %j. Tag des Jahres."''<br> | |||
'' Heute ist der 24.04.2018. Das ist der 118. Tag des Jahres.'' | |||
Mit dem Befehl ''date --help'' werden dir weitere Variablen anzeigt.<br> | |||
--help | |||
==Die RTC-Uhr einstellen== | |||
Mit dem Kommando ''hwclock'' können Sie die Systemzeit in die Hardwareuhr schreiben oder umgekehrt | Eine Echtzeituhr (englisch real-time clock, RTC) oder physikalische Uhr ist eine Uhr, welche die physikalische Zeit misst. Mit dem Kommando ''hwclock'' können Sie die Systemzeit in die Hardwareuhr schreiben oder umgekehrt. Folgendes Kommando schreibt die Systemzeit in die Echtzeituhr: | ||
'' | ''# hwclock --systohc'' | ||
Umgekehrt holt folgender Befehl die Zeit bei der RTC ab und stellt danach die Systemzeit ein: | Umgekehrt holt folgender Befehl die Zeit bei der RTC ab und stellt danach die Systemzeit ein: | ||
'' | ''# hwclock --hctosys'' | ||
Die Differenz ziwschen Hardwareuhr und der Systemzeit lässt sich mit ''hwclock'' ermitteln, indem Sie folgendes Kommando verwenden: | |||
und der Systemzeit | |||
'' | ''# hwclock --show'' | ||
''Di 24 Apr 2018 17:58:13 CEST -0.020712 Sekunden'' | ''Di 24 Apr 2018 17:58:13 CEST -0.020712 Sekunden'' | ||
==Zeitzonen== | |||
Damit | Damit die Lokaluhrzeit den Benutzer angezeigt wird, muss die BIOS-Uhr (RTC) auf UTC eingestellt werden. | ||
Wichtige Konfigurationsdateien: | |||
* ''/usr/share/zoneinfo'' – in diesem ''Verzeichnis'' befinden sich Binärdateien, die mit allen existierenden Zeitzonen korrespondieren. | |||
* ''/etc/localtime'' – diese Datei ist die mit der aktuellen Zeitzone übereinstimmende | |||
* Binärdatei aus ''/usr/share/zoneinfo''. Es kann sich hier um eine Kopie oder einen ''Softlink'' zur Originaldatei handeln. | |||
* ''/etc/timezone'' ist eine textbasierte Konfigurationsdatei. Sie können die richtige Zeitzone in dieser Datei einfach eintragen. | |||
Um einen Überblick über die verfügbaren Zeitzonen zu bekommen, können Sie ''tzselect'' verwenden.<br> | |||
==timedatectl== | |||
Der Befehl 'timedatectl'' kombiniert und erweitert die Funktionalität der Befehle ''date'' und ''hwclock''. | |||
Die Verwendung von ''timedatectl'' ohne Optionen gibt Ihnen eine Menge hilfreicher Informationen: | |||
''[root@scientific ~]# timedatectl'' | ''[root@scientific ~]# timedatectl'' | ||
''Local time: Sa 2018-04-21 13:49:47 CEST | |||
''Universal time: Sa 2018-04-21 11:49:47 UTC | |||
''RTC time: Sa 2018-04-21 11:49:47 | |||
''Time zone: Europe/Berlin (CEST, +0200) | |||
''NTP enabled: no | |||
''NTP synchronized: no | |||
''RTC in local TZ: no | |||
''DST active: yes | |||
''Last DST change: DST began at | |||
'' So 2018-03-25 01:59:59 CET | |||
'' So 2018-03-25 03:00:00 CEST | |||
''Next DST change: DST ends (the clock jumps one hour backwards) at | |||
'' So 2018-10-28 02:59:59 CEST | |||
'' So 2018-10-28 02:00:00 CET | |||
''timedatectl'' unterstützt auch die Ansteuerung von Remotemaschinen und lokalen | |||
timedatectl unterstützt auch die Ansteuerung von Remotemaschinen und lokalen | |||
Containern. Die manuelle Zeiteinstellung einer Remotemaschine geschieht mit dem | Containern. Die manuelle Zeiteinstellung einer Remotemaschine geschieht mit dem | ||
Kommando: | Kommando: | ||
[root@scientific ~]# timedatectl set-time "2018-03-24 14:24:16" -H archangel | ''[root@scientific ~]# timedatectl set-time "2018-03-24 14:24:16" -H archangel''<br> | ||
<br> | |||
Zeitsynchronisation mit ntpd | ==Zeitsynchronisation über das Netzwerk== | ||
Wenn | |||
Für die Zeitsynchronisation über das Netzwerk kommt das ''Network Time Protocol'' (NTP) zum Einsatz | |||
funktioniert dies allerdings mit dem Daemon ntpd. | |||
Es folgt ein Beispiel mit einem Zugriff auf einen Server: | |||
''root@archangel:~# ntpdate pool.ntp.org'' | |||
''24 Apr 18:03:14 ntpdate[30836]: adjust time server 131.234.137.24'' | |||
''offset -0.000341 sec'' | |||
Die Hauptkonfigurationsdatei für den ntpd ist /etc/ntp.conf. Hier findet der Daemon vor allem die Adressen mit den zur Aktualisierung vorgesehenen Servern und einen Verweis auf den Driftfile. | Mit ''ntpdate'' können Zeitserver die | ||
Uhrzeit des Systems aktualisieren. Es wird jedoch empfohlen, während der Synchronisation mehrere Server gleichzeitig zu konsultieren, damit die Richtigkeit der übertragenen Zeit überprüft werden kann.<br> | |||
server de.pool.ntp.org | |||
server ptbtime1.ptb.de | ==Zeitsynchronisation mit ntpd== | ||
driftfile /var/lib/ntp/drift/ntp.drift | |||
Mit diesen Einträgen ist der Server schon lauffähig. Starten Sie den Server | Wenn Sie ''ntpdate'' regelmäßig von ''cron'' ausführen lassen, wird Systemzeit automatisch synchronisiert. Komfortabler und genauer funktioniert dies allerdings mit dem Daemon ''ntpd''. | ||
Die Driftdatei wird von ntpd verwendet, um Ungenauigkeiten der Systemuhr festzuhalten. Die Abweichung von der tatsächlichen Zeit wird auf eine millionstel Sekunde ermittelt und in die Driftdatei geschrieben. | Die Hauptkonfigurationsdatei für den ''ntpd'' ist ''/etc/ntp.conf''. Hier findet der Daemon vor allem die Adressen mit den zur Aktualisierung vorgesehenen Servern und einen Verweis auf den Driftfile. Diese liegt, unter ''/etc/ntp.drift''. Der tatsächliche Speicherort hängt von der verwendeten Distribution ab. Die Mindestausstattung der ''ntp.conf'' könnte etwa so aussehen: | ||
Sie können den Daemon ntpd mithilfe des Programms ntpq abfragen | ''server de.pool.ntp.org'' | ||
''server ptbtime1.ptb.de'' | |||
''driftfile /var/lib/ntp/drift/ntp.drift'' | |||
root@archangel:~# ntpq -p | |||
<br> | Mit diesen Einträgen ist der Server schon lauffähig. So Starten Sie den Server ''/etc/init.d/ntpd start''. Nachdem Start wird der Server sofort eine erste Synchronisation durchführen. In Abhängigkeit von der verwendeten Distribution wurde ''ntpd'' bereits durch ''xntpd'' ersetzt. Die Konfigurationsdateien sind jedoch identisch. | ||
remote | |||
refid | Die Driftdatei wird von ''ntpd'' verwendet, um Ungenauigkeiten ''der Systemuhr'' festzuhalten. Die Abweichung von der tatsächlichen Zeit wird auf eine millionstel Sekunde ermittelt und in die Driftdatei geschrieben. | ||
st t when poll reach delay offset jitter | |||
=================================================================== | Sie können den Daemon ''ntpd'' mithilfe des Programms ''ntpq'' abfragen. Wenn Sie wissen wollen, welche Server Ihr ''ntpd'' kontaktiert, können Sie z. B. dieses Kommando verwenden: | ||
arcturos.gr | |||
''root@archangel:~# ntpq -p''<br> | |||
pyxis.my-rz.de 212.82.32.15 | ''remote refid st t when poll reach delay offset jitter''<br> | ||
===================================================================<br> | |||
bytesink.de | ''arcturos.gr 213.239.239.166 3 u 4 64 1 27.057 -1.371 0.000''<br> | ||
''pyxis.my-rz.de 212.82.32.15 2 u 3 64 1 23.226 1.645 0.000''<br> | |||
''bytesink.de 131.188.3.223 2 u 2 64 1 32.562 3.667 0.000''<br> | |||
ntp1.wtnet.de 10.129.40.211 | ''ntp1.wtnet.de 10.129.40.211 2 u 1 64 1 29.028 1.428 0.000''<br> | ||
''golem.canonical 192.93.2.20 2 u - 64 1 32.256 0.875 0.000''<br> | |||
golem.canonical 192.93.2.20 | |||
Es gibt mehrere Bordwerkzeuge, um den ''ntpd'' oder auch ''xntpd'' zu untersuchen. Die | |||
<br> | beiden wichtigsten sind wohl ''ntpq'' und ''ntpdc''. Beide Programme unterstützen einen | ||
Es gibt mehrere Bordwerkzeuge, um den ntpd oder auch xntpd zu untersuchen. Die | interaktiven Modus, der nach Eingabe eines Fragezeichens Aufschluss über die Möglichkeiten der beiden Programme liefert. | ||
beiden wichtigsten sind wohl ntpq und ntpdc. Beide Programme unterstützen einen | |||
interaktiven Modus, der nach Eingabe eines Fragezeichens Aufschluss über die Möglichkeiten der beiden Programme liefert. Das Beispiel zeigt eine Abfrage nach | Das Beispiel zeigt eine Abfrage nach ''sysinfo'' mit'' ntpdc'' im interaktiven Modus: | ||
sysinfo | ''archangel:/ # ntpdc'' | ||
mit ntpdc im interaktiven Modus: | ''ntpdc> sysinfo'' | ||
''system peer: ptbtime1.ptb.de'' | |||
archangel:/ # ntpdc | ''system peer mode: client'' | ||
ntpdc> sysinfo | ''leap indicator: 00'' | ||
system peer: | ''stratum: 2'' | ||
''precision: -18'' | |||
system peer mode: | ''root distance: 0.02992 s'' | ||
''root dispersion: 0.02531 s'' | |||
leap indicator: | ''reference ID: [192.53.103.108]'' | ||
''reference time: de60cef4.ac5938de Sat, Mar 24 2018 14:19:48.673'' | |||
stratum: | ''system flags: auth monitor ntp kernel stats'' | ||
''jitter: 0.004898 s'' | |||
precision: | ''stability: 236.358 ppm'' | ||
''broadcastdelay: 0.003998 s'' | |||
root distance: | ''authdelay: 0.000000 s'' | ||
''ntpdc>'' | |||
root dispersion: | |||
Die beiden Diagnoseprogramme peers und monlist geben große Informationsmengen aus. Eine weitere Implementierung des NTP ist chrony. Dieser Daemon eignet sich besonders für virtuelle Maschinen oder Systeme, die nicht dauerhaft laufen. Die Einstellung der RTC ist integriert und muss daher nicht vorgenommen werden. Die Zeitsynchronisation ist schneller und genauer als bei ntpd. | |||
reference ID: | |||
Nach der Installation von chrony durch das Paketmanagement haben Sie den Daemon chronyd, der über die Konfigurationsdatei chrony.conf konfiguriert wird und das Kommandozeilenwerkzeug chronyc. In der Datei /etc/chrony /chrony.conf können ähnliche Parameter festgelegt werden, wie in der Datei ntpd.conf. Wenn Sie chrony nicht nur als Client verwenden wollen, müssen Sie über ein allow-Statement den Zugriff erlauben. | |||
reference time: | |||
In der Standardeinstellung fungiert chrony nicht als Server. Sie müssen den Zugriff auf den Zeitserver aus bestimmten Netzen erlauben. Um den Zugriff aus allen privaten C-Klasse-Netzen zu erlauben, können Sie einen solchen Eintrag erstellen: | |||
system flags: | |||
Nach der Installation von ''chrony'' durch das Paketmanagement haben Sie den Daemon ''chronyd'', der über die Konfigurationsdatei ''chrony.conf'' konfiguriert wird und das Kommandozeilenwerkzeug ''chronyc''. In der Datei ''/etc/chrony'' ''/chrony.conf'' können ähnliche Parameter festgelegt werden, wie in der Datei ''ntpd.conf.'' Wenn Sie ''chrony'' nicht nur als Client verwenden wollen, müssen Sie über ein allow-Statement den Zugriff erlauben. In der Standardeinstellung fungiert ''chrony'' nicht als Server. Sie müssen den Zugriff auf den Zeitserver aus bestimmten Netzen erlauben. Um den Zugriff aus allen privaten C-Klasse-Netzen zu erlauben, können Sie einen solchen Eintrag erstellen: | |||
jitter: | |||
allow 192.168/16 | |||
stability: | |||
broadcastdelay: | |||
authdelay: | |||
ntpdc> | |||
Eine | |||
Nach der Installation von chrony durch das Paketmanagement haben Sie den Daemon | |||
chronyd, der über die Konfigurationsdatei chrony.conf konfiguriert wird und das Kommandozeilenwerkzeug chronyc. In der Datei /etc/chrony/chrony.conf können ähnliche Parameter festgelegt werden, wie in der Datei ntpd.conf. Wenn Sie chrony nicht nur als Client verwenden wollen, müssen Sie über ein allow-Statement den Zugriff erlauben. In der Standardeinstellung fungiert chrony nicht als Server. Sie müssen den Zugriff auf den Zeitserver aus bestimmten Netzen erlauben. Um den Zugriff aus allen privaten C-Klasse-Netzen zu erlauben, können Sie einen solchen Eintrag erstellen: | |||
allow 192.168/16 | |||
Wenn der Zugriff von überall her erlaubt werden soll, reicht ein Eintrag wie dieser: | Wenn der Zugriff von überall her erlaubt werden soll, reicht ein Eintrag wie dieser: | ||
allow 0/0 | |||
allow 0/0 | Das Kommandozeilenwerkzeug ''chronyc'' kann direkt als Kommandozeile oder interaktiv verwendet werden. | ||
Das Kommandozeilenwerkzeug chronyc kann direkt als Kommandozeile oder | Hier ein interaktives Beispiel: | ||
# chronyc | |||
chronyc> sources -v | |||
210 Number of sources = 4 | |||
chronyc> sources -v | .-- Source mode '^' = server, '=' = peer, '#' = local clock. | ||
210 Number of sources = 4 | / .- Source state '*' = current synced, '+' = combined , '-' = not combined, | ||
.-- Source mode '^' = server, '=' = peer, '#' = local clock. | | / '?' = unreachable, 'x' = time may be in error, '~' = time too variable. | ||
/ .- Source state '*' = current synced, '+' = combined , '-' = not combined, | || .- xxxx [ yyyy ] +/- zzzz | ||
| / '?' = unreachable, 'x' = time may be in error, '~' = time too variable. | || Reachability register (octal) -. | xxxx = adjusted offset, | ||
|| | || Log2(Polling interval) --. | | yyyy = measured offset, | ||
|| \ | | zzzz = estimated error. | |||
|| | || | | \ | ||
MS Name/IP address Stratum Poll Reach LastRx Last sample | |||
=========================================================================== | |||
|| | ^- b.fu110.de 3 6 377 36 +5041us[+5041us] +/- 92ms | ||
^+ public-dns-a.primawebtool 2 6 377 37 +1762us[+1889us] +/- 47ms | |||
^+ scrollout.family-adam.de 2 6 377 35 -3393us[-3393us] +/- 36ms | |||
^* stratum2-3.NTP.TechFak.Un 2 6 377 37 +710us[ +837us] +/- 17ms | |||
|| | |||
= Links = | |||
== Intern == | |||
# | |||
|| | == Weblinks == | ||
# | |||
MS Name/IP address | |||
[[Kategorie:Linux/LPIC/102]] | |||
Aktuelle Version vom 28. Mai 2023, 08:08 Uhr
Wichtigste Wissensgebiete
- Systemzeit und -datum setzen
- die Hardwareuhr auf die korrekte Zeit in UTC setzen
- die korrekte Zeitzone einstellen
- grundlegende NTP-Konfiguration unter Verwendung von ntpd und chrony
- Wissen über den Gebrauch von pool.ntp.org
- Kenntnis des ntpq-Kommandos
Liste wichtiger Dateien, Verzeichnisse und Anwendungen:
- /usr/share/zoneinfo
- /etc/timezone
- /etc/localtime
- /etc/ntp.conf
- /etc/chrony.conf
- date
- hwclock
- timedatectl
- ntpd
- ntpdate
- chronyc
- pool.ntp.org
Manuelle Konfiguration der Systemzeit
Die manuelle Konfiguration der Systemzeit erfolgt über das Kommando date. Wenn Sie date ohne Parameter starten, werden das aktuelle Datum und die Uhrzeit ausgegeben.
# date Di 24. Apr 17:54:52 CEST 2018
die Uhrzeit mittels date ändern:
# date -s 1755 Di 24. Apr 17:55:00 CEST 2018
Die Uhr wurde nun erfolgreich auf 17.55 Uhr eingestellt.
Für bessere Darstellungen kann man date + verwenden
Das sieht z. B. so aus:
# date "+Heute ist der %d.%m.%Y. Das ist der %j. Tag des Jahres."
Heute ist der 24.04.2018. Das ist der 118. Tag des Jahres.
Mit dem Befehl date --help werden dir weitere Variablen anzeigt.
Die RTC-Uhr einstellen
Eine Echtzeituhr (englisch real-time clock, RTC) oder physikalische Uhr ist eine Uhr, welche die physikalische Zeit misst. Mit dem Kommando hwclock können Sie die Systemzeit in die Hardwareuhr schreiben oder umgekehrt. Folgendes Kommando schreibt die Systemzeit in die Echtzeituhr:
# hwclock --systohc
Umgekehrt holt folgender Befehl die Zeit bei der RTC ab und stellt danach die Systemzeit ein:
# hwclock --hctosys
Die Differenz ziwschen Hardwareuhr und der Systemzeit lässt sich mit hwclock ermitteln, indem Sie folgendes Kommando verwenden:
# hwclock --show Di 24 Apr 2018 17:58:13 CEST -0.020712 Sekunden
Zeitzonen
Damit die Lokaluhrzeit den Benutzer angezeigt wird, muss die BIOS-Uhr (RTC) auf UTC eingestellt werden. Wichtige Konfigurationsdateien:
- /usr/share/zoneinfo – in diesem Verzeichnis befinden sich Binärdateien, die mit allen existierenden Zeitzonen korrespondieren.
- /etc/localtime – diese Datei ist die mit der aktuellen Zeitzone übereinstimmende
- Binärdatei aus /usr/share/zoneinfo. Es kann sich hier um eine Kopie oder einen Softlink zur Originaldatei handeln.
- /etc/timezone ist eine textbasierte Konfigurationsdatei. Sie können die richtige Zeitzone in dieser Datei einfach eintragen.
Um einen Überblick über die verfügbaren Zeitzonen zu bekommen, können Sie tzselect verwenden.
timedatectl
Der Befehl 'timedatectl kombiniert und erweitert die Funktionalität der Befehle date und hwclock.
Die Verwendung von timedatectl ohne Optionen gibt Ihnen eine Menge hilfreicher Informationen:
[root@scientific ~]# timedatectl Local time: Sa 2018-04-21 13:49:47 CEST Universal time: Sa 2018-04-21 11:49:47 UTC RTC time: Sa 2018-04-21 11:49:47 Time zone: Europe/Berlin (CEST, +0200) NTP enabled: no NTP synchronized: no RTC in local TZ: no DST active: yes Last DST change: DST began at So 2018-03-25 01:59:59 CET So 2018-03-25 03:00:00 CEST Next DST change: DST ends (the clock jumps one hour backwards) at So 2018-10-28 02:59:59 CEST So 2018-10-28 02:00:00 CET
timedatectl unterstützt auch die Ansteuerung von Remotemaschinen und lokalen Containern. Die manuelle Zeiteinstellung einer Remotemaschine geschieht mit dem Kommando:
[root@scientific ~]# timedatectl set-time "2018-03-24 14:24:16" -H archangel
Zeitsynchronisation über das Netzwerk
Für die Zeitsynchronisation über das Netzwerk kommt das Network Time Protocol (NTP) zum Einsatz
Es folgt ein Beispiel mit einem Zugriff auf einen Server:
root@archangel:~# ntpdate pool.ntp.org 24 Apr 18:03:14 ntpdate[30836]: adjust time server 131.234.137.24 offset -0.000341 sec
Mit ntpdate können Zeitserver die
Uhrzeit des Systems aktualisieren. Es wird jedoch empfohlen, während der Synchronisation mehrere Server gleichzeitig zu konsultieren, damit die Richtigkeit der übertragenen Zeit überprüft werden kann.
Zeitsynchronisation mit ntpd
Wenn Sie ntpdate regelmäßig von cron ausführen lassen, wird Systemzeit automatisch synchronisiert. Komfortabler und genauer funktioniert dies allerdings mit dem Daemon ntpd.
Die Hauptkonfigurationsdatei für den ntpd ist /etc/ntp.conf. Hier findet der Daemon vor allem die Adressen mit den zur Aktualisierung vorgesehenen Servern und einen Verweis auf den Driftfile. Diese liegt, unter /etc/ntp.drift. Der tatsächliche Speicherort hängt von der verwendeten Distribution ab. Die Mindestausstattung der ntp.conf könnte etwa so aussehen:
server de.pool.ntp.org server ptbtime1.ptb.de driftfile /var/lib/ntp/drift/ntp.drift
Mit diesen Einträgen ist der Server schon lauffähig. So Starten Sie den Server /etc/init.d/ntpd start. Nachdem Start wird der Server sofort eine erste Synchronisation durchführen. In Abhängigkeit von der verwendeten Distribution wurde ntpd bereits durch xntpd ersetzt. Die Konfigurationsdateien sind jedoch identisch.
Die Driftdatei wird von ntpd verwendet, um Ungenauigkeiten der Systemuhr festzuhalten. Die Abweichung von der tatsächlichen Zeit wird auf eine millionstel Sekunde ermittelt und in die Driftdatei geschrieben.
Sie können den Daemon ntpd mithilfe des Programms ntpq abfragen. Wenn Sie wissen wollen, welche Server Ihr ntpd kontaktiert, können Sie z. B. dieses Kommando verwenden:
root@archangel:~# ntpq -p
remote refid st t when poll reach delay offset jitter
===================================================================
arcturos.gr 213.239.239.166 3 u 4 64 1 27.057 -1.371 0.000
pyxis.my-rz.de 212.82.32.15 2 u 3 64 1 23.226 1.645 0.000
bytesink.de 131.188.3.223 2 u 2 64 1 32.562 3.667 0.000
ntp1.wtnet.de 10.129.40.211 2 u 1 64 1 29.028 1.428 0.000
golem.canonical 192.93.2.20 2 u - 64 1 32.256 0.875 0.000
Es gibt mehrere Bordwerkzeuge, um den ntpd oder auch xntpd zu untersuchen. Die beiden wichtigsten sind wohl ntpq und ntpdc. Beide Programme unterstützen einen interaktiven Modus, der nach Eingabe eines Fragezeichens Aufschluss über die Möglichkeiten der beiden Programme liefert.
Das Beispiel zeigt eine Abfrage nach sysinfo mit ntpdc im interaktiven Modus:
archangel:/ # ntpdc ntpdc> sysinfo system peer: ptbtime1.ptb.de system peer mode: client leap indicator: 00 stratum: 2 precision: -18 root distance: 0.02992 s root dispersion: 0.02531 s reference ID: [192.53.103.108] reference time: de60cef4.ac5938de Sat, Mar 24 2018 14:19:48.673 system flags: auth monitor ntp kernel stats jitter: 0.004898 s stability: 236.358 ppm broadcastdelay: 0.003998 s authdelay: 0.000000 s ntpdc>
Die beiden Diagnoseprogramme peers und monlist geben große Informationsmengen aus. Eine weitere Implementierung des NTP ist chrony. Dieser Daemon eignet sich besonders für virtuelle Maschinen oder Systeme, die nicht dauerhaft laufen. Die Einstellung der RTC ist integriert und muss daher nicht vorgenommen werden. Die Zeitsynchronisation ist schneller und genauer als bei ntpd.
Nach der Installation von chrony durch das Paketmanagement haben Sie den Daemon chronyd, der über die Konfigurationsdatei chrony.conf konfiguriert wird und das Kommandozeilenwerkzeug chronyc. In der Datei /etc/chrony /chrony.conf können ähnliche Parameter festgelegt werden, wie in der Datei ntpd.conf. Wenn Sie chrony nicht nur als Client verwenden wollen, müssen Sie über ein allow-Statement den Zugriff erlauben.
In der Standardeinstellung fungiert chrony nicht als Server. Sie müssen den Zugriff auf den Zeitserver aus bestimmten Netzen erlauben. Um den Zugriff aus allen privaten C-Klasse-Netzen zu erlauben, können Sie einen solchen Eintrag erstellen:
Nach der Installation von chrony durch das Paketmanagement haben Sie den Daemon chronyd, der über die Konfigurationsdatei chrony.conf konfiguriert wird und das Kommandozeilenwerkzeug chronyc. In der Datei /etc/chrony /chrony.conf können ähnliche Parameter festgelegt werden, wie in der Datei ntpd.conf. Wenn Sie chrony nicht nur als Client verwenden wollen, müssen Sie über ein allow-Statement den Zugriff erlauben. In der Standardeinstellung fungiert chrony nicht als Server. Sie müssen den Zugriff auf den Zeitserver aus bestimmten Netzen erlauben. Um den Zugriff aus allen privaten C-Klasse-Netzen zu erlauben, können Sie einen solchen Eintrag erstellen:
allow 192.168/16
Wenn der Zugriff von überall her erlaubt werden soll, reicht ein Eintrag wie dieser:
allow 0/0
Das Kommandozeilenwerkzeug chronyc kann direkt als Kommandozeile oder interaktiv verwendet werden.
Hier ein interaktives Beispiel:
# chronyc chronyc> sources -v 210 Number of sources = 4 .-- Source mode '^' = server, '=' = peer, '#' = local clock. / .- Source state '*' = current synced, '+' = combined , '-' = not combined, | / '?' = unreachable, 'x' = time may be in error, '~' = time too variable. || .- xxxx [ yyyy ] +/- zzzz || Reachability register (octal) -. | xxxx = adjusted offset, || Log2(Polling interval) --. | | yyyy = measured offset, || \ | | zzzz = estimated error. || | | \ MS Name/IP address Stratum Poll Reach LastRx Last sample =========================================================================== ^- b.fu110.de 3 6 377 36 +5041us[+5041us] +/- 92ms ^+ public-dns-a.primawebtool 2 6 377 37 +1762us[+1889us] +/- 47ms ^+ scrollout.family-adam.de 2 6 377 35 -3393us[-3393us] +/- 36ms ^* stratum2-3.NTP.TechFak.Un 2 6 377 37 +710us[ +837us] +/- 17ms