GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Chrony – Ein alternativer NTP-Client und -Server für Unix-ähnliche Systeme

In diesem Tutorial besprechen wir, wie Chrony installiert und konfiguriert wird , ein alternativer NTP-Client und -Server für Unix-ähnliche Systeme. Chrony kann die Systemuhr schneller mit besserer Zeitgenauigkeit synchronisieren und kann besonders nützlich für Systeme sein, die nicht ständig online sind. Chrony ist kostenlos, Open Source und unterstützt GNU/Linux- und BSD-Varianten wie FreeBSD, NetBSD, macOS und Solaris.

Chrony installieren

Chrony ist in den Standard-Repositories der meisten Linux-Distributionen verfügbar. Wenn Sie Arch Linux verwenden, führen Sie den folgenden Befehl aus, um es zu installieren:

$ sudo pacman -S chrony

Unter Debian, Ubuntu, Linux Mint:

$ sudo apt-get install chrony

Auf Fedora:

$ sudo dnf install chrony

Starten Sie nach der Installation chronyd.service Daemon, falls er noch nicht gestartet ist:

$ sudo systemctl start chronyd.service

Machen Sie es so, dass es bei jedem Neustart automatisch startet, indem Sie den Befehl verwenden:

$ sudo systemctl enable chronyd.service

Um zu überprüfen, ob Chronyd.service gestartet wurde, führen Sie Folgendes aus:

$ sudo systemctl status chronyd.service

Wenn alles in Ordnung ist, sehen Sie eine Ausgabe wie unten.

● chrony.service - chrony, an NTP client/server
Loaded: loaded (/lib/systemd/system/chrony.service; enabled; vendor preset: ena
Active: active (running) since Wed 2018-10-17 10:34:53 UTC; 3min 15s ago
Docs: man:chronyd(8)
man:chronyc(1)
man:chrony.conf(5)
Main PID: 2482 (chronyd)
Tasks: 1 (limit: 2320)
CGroup: /system.slice/chrony.service
└─2482 /usr/sbin/chronyd

Oct 17 10:34:53 ubuntuserver systemd[1]: Starting chrony, an NTP client/server...
Oct 17 10:34:53 ubuntuserver chronyd[2482]: chronyd version 3.2 starting (+CMDMON 
Oct 17 10:34:53 ubuntuserver chronyd[2482]: Initial frequency -268.088 ppm
Oct 17 10:34:53 ubuntuserver systemd[1]: Started chrony, an NTP client/server.
Oct 17 10:35:03 ubuntuserver chronyd[2482]: Selected source 85.25.84.166
Oct 17 10:35:03 ubuntuserver chronyd[2482]: Source 85.25.84.166 replaced with 2403
Oct 17 10:35:03 ubuntuserver chronyd[2482]: Selected source 91.189.89.199
Oct 17 10:35:06 ubuntuserver chronyd[2482]: Selected source 106.10.186.200

Wie Sie sehen können, wurde der Chrony-Dienst gestartet und funktioniert!

Chrony konfigurieren

Die NTP-Clients müssen wissen, welche NTP-Server sie kontaktieren sollen, um die aktuelle Uhrzeit zu erhalten. Wir können die NTP-Server im Server angeben oder Pool Direktive in der NTP-Konfigurationsdatei. Normalerweise ist die Standardkonfigurationsdatei /etc/chrony/chrony.conf oder /etc/chrony.conf abhängig von der Version der Linux-Distribution. Für eine bessere Zuverlässigkeit wird empfohlen, mindestens drei Server anzugeben.

Die folgenden Zeilen sind nur ein Beispiel von meinem Ubuntu 18.04 LTS-Server.

[...]
# About using servers from the NTP Pool Project in general see (LP: #104525).
# Approved by Ubuntu Technical Board on 2011-02-08.
# See http://www.pool.ntp.org/join.html for more information.
pool ntp.ubuntu.com iburst maxsources 4
pool 0.ubuntu.pool.ntp.org iburst maxsources 1
pool 1.ubuntu.pool.ntp.org iburst maxsources 1
pool 2.ubuntu.pool.ntp.org iburst maxsources 2
[...]

Wie Sie in der obigen Ausgabe sehen, NTP Pool Project wurde als Standard-Zeitserver festgelegt. Für diejenigen, die sich fragen, ist das NTP-Pool-Projekt der Cluster von Zeitservern, der NTP-Dienste für zig Millionen Clients auf der ganzen Welt bereitstellt. Es ist der Standard-Zeitserver für Ubuntu und die meisten anderen wichtigen Linux-Distributionen.

Hier,

  • der iburst Option wird verwendet, um die anfängliche Synchronisierung zu beschleunigen.
  • die maxsources bezieht sich auf die maximale Anzahl von NTP-Quellen.

Bitte stellen Sie sicher, dass die von Ihnen ausgewählten NTP-Server gut synchronisiert, stabil und in der Nähe Ihres Standorts sind, um die Genauigkeit der Zeit mit NTP-Quellen zu verbessern.

Chronyd über die Befehlszeile verwalten

Chrony verfügt über ein Befehlszeilenprogramm namens chronyc um die chrony zu steuern und zu überwachen Dämon (chronyd).

Um zu prüfen, ob chrony synchronisiert ist, können wir das Tracking verwenden Befehl wie unten gezeigt.

$ chronyc tracking
Reference ID : 6A0ABAC8 (t1.time.sg3.yahoo.com)
Stratum : 3
Ref time (UTC) : Wed Oct 17 11:48:51 2018
System time : 0.000984587 seconds slow of NTP time
Last offset : -0.000912981 seconds
RMS offset : 0.007983995 seconds
Frequency : 23.704 ppm slow
Residual freq : +0.006 ppm
Skew : 1.734 ppm
Root delay : 0.089718960 seconds
Root dispersion : 0.008760406 seconds
Update interval : 515.1 seconds
Leap status : Normal

Wir können die aktuellen Zeitquellen, die chrony verwendet, mit folgendem Befehl überprüfen:

$ chronyc sources
210 Number of sources = 8
MS Name/IP address Stratum Poll Reach LastRx Last sample 
===============================================================================
^- chilipepper.canonical.com 2 10 377 296 +102ms[ +104ms] +/- 279ms
^- golem.canonical.com 2 10 377 302 +105ms[ +107ms] +/- 290ms
^+ pugot.canonical.com 2 10 377 297 +36ms[ +38ms] +/- 238ms
^- alphyn.canonical.com 2 10 377 279 -43ms[ -42ms] +/- 238ms
^- dadns.cdnetworks.co.kr 2 10 377 1070 +40ms[ +42ms] +/- 314ms
^* t1.time.sg3.yahoo.com 2 10 377 169 -13ms[ -11ms] +/- 80ms
^+ sin1.m-d.net 2 10 275 567 -9633us[-7826us] +/- 115ms
^- ns2.pulsation.fr 2 10 377 311 -75ms[ -73ms] +/- 250ms

Das Dienstprogramm Chronyc kann mithilfe von sourcestats die Statistiken jeder Quelle ermitteln, z. B. Driftrate und Offset-Schätzungsprozess Befehl.

$ chronyc sourcestats
210 Number of sources = 8
Name/IP Address NP NR Span Frequency Freq Skew Offset Std Dev
==============================================================================
chilipepper.canonical.com 32 16 89m +6.293 14.345 +30ms 24ms
golem.canonical.com 32 17 89m +0.312 18.887 +20ms 33ms
pugot.canonical.com 32 18 89m +0.281 11.237 +3307us 23ms
alphyn.canonical.com 31 20 88m -4.087 8.910 -58ms 17ms
dadns.cdnetworks.co.kr 29 16 76m -1.094 9.895 -83ms 14ms
t1.time.sg3.yahoo.com 32 16 91m +0.153 1.952 +2835us 4044us
sin1.m-d.net 29 13 83m +0.049 6.060 -8466us 9940us
ns2.pulsation.fr 32 17 88m +0.784 9.834 -62ms 22ms

Wenn Ihr System nicht mit dem Internet verbunden ist, müssen Sie Chrony benachrichtigen, dass das System nicht mit dem Internet verbunden ist. Führen Sie dazu Folgendes aus:

$ sudo chronyc offline
[sudo] password for sk: 
200 OK

Um den Status Ihrer NTP-Quellen zu überprüfen, führen Sie einfach Folgendes aus:

$ chronyc activity
200 OK
0 sources online
8 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address

Wie Sie sehen, sind im Moment alle meine NTP-Quellen ausgefallen.

Sobald Sie mit dem Internet verbunden sind, benachrichtigen Sie Chrony einfach mit dem Befehl:

, dass Ihr System wieder online ist
$ sudo chronyc online
200 OK

Um den Status der NTP-Quelle(n) anzuzeigen, führen Sie Folgendes aus:

$ chronyc activity
200 OK
8 sources online
0 sources offline
0 sources doing burst (return to online)
0 sources doing burst (return to offline)
0 sources with unknown address

Eine detailliertere Erklärung aller Optionen und Parameter finden Sie auf den Manpages.

$ man chronyc
$ man chronyd

Und das ist alles für jetzt. Hoffe, das war nützlich. In den folgenden Tutorials werden wir sehen, wie man einen lokalen NTP-Server mit Chrony einrichtet und die Clients so konfiguriert, dass sie ihn zum Synchronisieren der Zeit verwenden.

Bleiben Sie dran!


Linux
  1. So richten Sie NTP-Server und -Client unter Debian 9 Stretch Linux ein

  2. So installieren Sie NTP-Server und -Client unter Ubuntu 18.04 LTS

  3. UnixBench – Eine Benchmark-Suite für Unix-ähnliche Systeme

  4. Lernen von NFS durch Server- und Client-Konfiguration

  5. Wie installiere und konfiguriere ich NTP für die Zeitsynchronisierung in CentOS?

So konfigurieren Sie einen NTP-Server und -Client unter Ubuntu 20.04 LTS

So konfigurieren Sie NTP-Server und -Client unter Debian 10

So richten Sie NTP-Server und -Client unter Debian 11 ein

So installieren Sie NTP-Server und Client(s) unter Ubuntu 20.04 LTS

NIS-Client und -Server

So richten Sie NTP-Server und -Client unter Ubuntu 20.04 LTS ein