[[Vorlage(Getestet, bionic)]] {{{#!vorlage Wissen [:Pakete installieren: Installation von Programmen] [:Terminal: Ein Terminal verwenden] }}} [[Inhaltsverzeichnis(1)]] [https://chrony.tuxfamily.org/ chrony] {en} ist eine Implementierung des [wikipedia:Network_Time_Protocol:Network Time Protocol] (NTP). Mit Hilfe dieses Protokolls können Computersysteme die Zeiten ihrer Uhren untereinander synchronisieren. Ubuntu nutzt seit Version [:16.04:] [:systemd/timesyncd:timesyncd] als vorinstallierte Lösung für diesen Zeitabgleich, die eine vereinfachte Spezifikation des Protokolls ([wikipedia:Network_Time_Protocol#SNTP:Simple Network Time Protokol] (SNTP)) implementiert und die für einen Client oder einen einzelnen Server ausreicht. Ist jedoch eine höhere Genauigkeit gefragt, der Abgleich mit mehreren unterschiedlichen Quellen gleichzeitig, die Bereitstellung eigener Zeitdienste oder auch die Integration von Referenzuhren, bietet sich die Nutzung von chrony an. = Installation = {{{#!vorlage Hinweis Die Installation von chrony ersetzt timesyncd als Zeitdienst. }}} Chrony kann aus den Ubuntu-Paketquellen installiert werden[1]: {{{#!vorlage Paketinstallation chrony }}} = Konfiguration = Die Konfiguration erfolgt über die Datei '''/etc/chrony/chrony.conf'''. Mit der Installation wird bereits eine arbeitsfähige Konfiguration mitgeliefert, die chrony als NTP-Client arbeiten lässt. Erklärungen für die zahlreichen Konfigurationsoptionen von chrony gibt es auf der Projektseite in der umfassenden [https://chrony.tuxfamily.org/documentation.html Dokumentation] {en}. Da die Anforderungen für den Betrieb eines eigenen Zeitservers sehr unterschiedlich sein können, wird an dieser Stelle zugunsten der Beispiele in der Dokumentation verzichtet. = Bedienung = chrony besteht aus den zwei Programmen * chronyc – Command Line Interface für chrony (Client) und * chronyd – Hintergrunddienst (Daemon) == Chrony-Client == chronyc ist das Client-Programm zu chronyd, welches Befehle für einen chronyd-Prozess entweder direkt auf der Kommandozeile annimmt oder nach dem Aufbau einer Verbindung eine interaktive Shell bereitstellt. Die Kommandozeilenhilfe von chronyc gibt Aufschluss über die Syntax des Befehls[2]: {{{#!vorlage Befehl chronyc --help }}} {{{ Usage: chronyc [-h HOST] [-p PORT] [-n] [-4|-6] [-a] [-f FILE] [-m] [COMMAND] }}} Ohne Angabe von Optionen verbindet sich chronyc mit dem lokalen chronyd und startet die interaktive Shell. Nachfolgend eine beispielhafte Sitzung unter Ubuntu 16.04 zur Abfrage von Statusinformationen (hier mit den Befehlen activity, sources und tracking): {{{#!vorlage Befehl chronyc }}} {{{ chrony version 2.1.1 Copyright (C) 1997-2003, 2007, 2009-2015 Richard P. Curnow and others chrony comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to redistribute it under certain conditions. See the GNU General Public License version 2 for details. chronyc> activity 200 OK 4 sources online 0 sources offline 0 sources doing burst (return to online) 0 sources doing burst (return to offline) 0 sources with unknown address chronyc> sources 210 Number of sources = 4 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== ^+ ntp1.hetzner.de 2 6 377 18 -3007us[-2457us] +/- 52ms ^+ tirpitz.netzkontrollstell 2 6 377 17 -658us[ -658us] +/- 30ms ^+ curiosity.weesky.be 2 6 377 17 -1665us[-1665us] +/- 46ms ^* stratum2-3.NTP.TechFak.NE 2 6 377 17 +2852us[+3402us] +/- 18ms chronyc> tracking Reference ID : 129.70.132.36 (stratum2-3.NTP.TechFak.NET) Stratum : 3 Ref time (UTC) : Sat Apr 11 13:50:08 2020 System time : 50622.625000000 seconds slow of NTP time Last offset : +0.000549936 seconds RMS offset : 0.000961328 seconds Frequency : 37.426 ppm fast Residual freq : +0.236 ppm Skew : 3.850 ppm Root delay : 0.030706 seconds Root dispersion : 0.003080 seconds Update interval : 59.6 seconds Leap status : Normal chronyc> }}} Anschließend kann man `chronyc` durch die Eingabe von `exit` wieder verlassen. chronyc beinhaltet auch ein Hilfe-Kommando zur Ausgabe aller erlaubter Befehle: {{{#!vorlage Befehl chronyc help }}} {{{ System clock: tracking Display system time information makestep Correct clock by stepping immediately makestep Configure automatic clock stepping maxupdateskew Modify maximum valid skew to update frequency waitsync [ [ [ []]]] Wait until synchronised in specified limits Time sources: sources [-v] Display information about current sources sourcestats [-v] Display statistics about collected measurements reselect Force reselecting synchronisation source reselectdist Modify reselection distance NTP sources: activity Check how many NTP sources are online/offline ntpdata [
] Display information about last valid measurement add server
[options] Add new NTP server add peer
[options] Add new NTP peer delete
Remove server or peer burst / [/
] Start rapid set of measurements maxdelay
Modify maximum valid sample delay maxdelayratio
Modify maximum valid delay/minimum ratio maxdelaydevratio
Modify maximum valid delay/deviation ratio minpoll
Modify minimum polling interval maxpoll
Modify maximum polling interval minstratum
Modify minimum stratum offline [/
] Set sources in subnet to offline status online [/
] Set sources in subnet to online status onoffline Set all sources to online or offline status according to network configuration polltarget
Modify poll target refresh Refresh IP addresses Manual time input: manual off|on|reset Disable/enable/reset settime command manual list Show previous settime entries manual delete Delete previous settime entry settime