Dieses Tutorial konzentriert sich auf die Techniken zum Festlegen von Datum und Uhrzeit unter Linux mithilfe von timedatectl, NTP oder date.

Als Systemadministrator werden Sie möglicherweise aufgefordert, das Systemdatum auf mehreren Servern festzulegen.

Sie sind möglicherweise schlecht konfiguriert oder ihre Zeitzonen sind möglicherweise nicht richtig konfiguriert.

Infolgedessen protokollieren einige Ihrer Programme möglicherweise ungültige Daten, sodass beispielsweise einige Ihrer Serverprotokolle nicht überprüft werden können.,

In diesem Tutorial werden wir sehen, wie Sie das Datum unter Linux richtig einstellen können, um es Ihrer aktuellen geografischen Zeitzone anzupassen.

Zunächst werden wir uns den Befehl timedatectl mit der Option systemd-timesync ansehen. Als nächstes werden wir entweder Chrony-oder NTP-Dienste installieren, um unser Systemdatum effizient zu synchronisieren.

Schließlich werden wir den Befehl „date“ verwenden, um unser Systemdatum statisch festzulegen.

Wir werden auch die Unterschiede zwischen diesen Methoden diskutieren und welche Sie vorzugsweise verwenden möchten.,

Inhaltsverzeichnis

Voraussetzungen

Vor dem Start benötigen Sie sudo-Berechtigungen auf Ihrem Host, um einige der Befehle auszuführen.

Um dies sicherzustellen, können Sie den folgenden Befehl ausführen

$ sudo -lUser user may run the following commands on localhost: (ALL) ALL

Wenn Sie in Ihrem Konto keine Sudo-Berechtigungen haben, folgen Sie diesem Tutorial, um sudo auf Debian-basierten Systemen oder auf Red Hat-basierten Systemen (CentOS, RHEL) zu erhalten

Datum unter Linux mit timedatectl festlegen

Unabhängig davon, ob Sie an Debian/Ubuntu oder RHEL / CentOS arbeiten, können Sie das Datum auf ist das gleiche.,

Um das Datum festzulegen, müssen Sie Ihre Zeitzoneninformationen festlegen und (optional) das NTP-Protokoll aktivieren, damit Ihr System mit NTP-Servern synchronisiert werden kann. Wenn Sie das NTP-Protokoll (mit ntpd oder chrony) nicht verwenden, verwendet Ihr System standardmäßig den Timesync-Dienst.

Wenn Ihre Zeitzone schlecht konfiguriert ist, müssen Sie Ihre Zeitzoneninformationen ändern.

Um Ihre aktuelle Zeitzone unter Linux abzurufen, können Sie den Befehl timedatectl ausführen.

Angenommen, Sie möchten es ändern.,

Um Zeitzonen unter Linux aufzulisten, verwenden Sie die Option“ list-timezones “ mit timedatectl.

$ timedatectl list-timezones

Wie Sie sehen können, Zeitzonen präsentiert werden, mithilfe der folgenden syntax : Kontinent/region -.

Um Ihre Zeitzone auf New York einzustellen, können Sie sie einfach mit grep suchen.

$ timedatectl list-timezones | grep YorkAmerica/New_York

Um die Zeitzone festzulegen, verwenden Sie den Befehl“ set-timezone“.

$ timedatectl set-timezone America/New_York

Um Ihr aktuelles Systemdatum zu überprüfen, müssen Sie den Befehl timedatectl erneut ausführen.,

Ihr aktuelles Datum ist jedoch noch nicht synchronisiert, Sie müssen den NTP-Dienst aktivieren, damit er synchronisiert werden kann.

Wenn Sie mit einer Distribution mit systemd arbeiten, sollten Sie standardmäßig über den systemd-timesync-Daemon verfügen.

Der Hauptunterschied zwischen systemd-timesync und NTP besteht darin, dass der Daemon nur clientseitig implementiert und keine komplexen Mechanismen wie NTP verwendet.

Um die Zeitsynchronisation zu aktivieren, führen Sie einfach diesen Befehl aus.,

$ timedatectl set-ntp truesystemd-timesyncd.service active: true

Wenn Sie lieber chrony oder NTP verwenden, beschreiben die nächsten Abschnitte, wie Sie NTP und chrony festlegen können, um Ihr Systemdatum zu synchronisieren.

Datum unter Linux mit chrony (NTP) festlegen

Die genaueste Methode zum Festlegen des Datums unter Linux ist die Verwendung des ntp-Protokolls.

Zur schnellen Erinnerung wird das NTP-Protokoll verwendet, um die Zeit zwischen verschiedenen Servern über ein Netzwerk zu synchronisieren.

Sie verwenden Referenzzeitserver, die mit Ihrem eigenen Server synchronisiert werden, indem Latenzen berechnet werden, um Referenzserver zu kontaktieren.,

Mit dem NTP-Protokoll können Sie unter Linux ein sehr genaues Datum haben.

Um das Datum festzulegen, verwenden Sie den Chrony-Dienst.

Stellen Sie zunächst sicher, dass der timesyncd-Dienst nicht auf Ihrem Host ausgeführt wird.

$ sudo systemctl stop systemd-timesyncd.service

Stellen Sie als nächstes sicher, dass Ihre Pakete auf Ihrem Server auf dem neuesten Stand sind.

$ sudo yum update

Installieren Sie dann das Chrony-Paket mit YUM.

$ sudo yum install chrony $ sudo apt-get install chrony 

In den meisten Fällen ist der Chrony-Dienst standardmäßig auf Ihrer Distribution installiert.,

Um den Chrony-Dienst zu aktivieren und zu starten, müssen Sie die folgenden Befehle ausführen.

$ sudo systemctl enable chronyd$ sudo systemctl start chronyd

Überprüfen Sie den status Ihres Dienstes mit dem Befehl „status“.

Nachdem chrony auf Ihrem System installiert ist, können Sie Ihr Systemdatum ändern, indem Sie die Zeitzone Ihres Systems anpassen.,

Beachten Sie, dass Sie das NTP-Protokoll für den Befehl timedatectl nicht aktivieren müssen, da startchrony den systemd-timesync-Daemon automatisch desaktiviert, um NTP zu verwenden.

Wenn Sie dies sicherstellen möchten, können Sie weiterhin den folgenden Befehl ausführen.

$ timedatectl set-ntp true

Führen Sie den Befehl timedatectl erneut, um sicherzustellen, dass alles synchronisiert wird.

Hinweis : Anstatt“ NTP-Dienst „zu haben, können Sie immer noch“ systemd-timesyncd.dienst aktiv “ Label auf ja gesetzt., Es bedeutet nicht, dass der Dienst aktiv ist, aber es bedeutet, dass der Host chrony als eine Möglichkeit verwendet, zu synchronisieren.

Außerdem können Sie“ date “ ausführen, um Ihr aktuelles Systemdatum zu überprüfen.

$ date Thu Oct 17 13:16:10 EDT 2019

Awesome!

Sie haben Ihr Datum unter Linux (CentOS/RHEL) mit chrony erfolgreich festgelegt.

Datum festlegen unter Linux mit ntpd (NTP)

Wie bereits beschrieben, ist die Verwendung des NTP-Protokolls wahrscheinlich der genaueste Weg, um Ihr Datum unter Ubuntu und Debian festzulegen.

Zunächst installieren Sie den NTP-Dienst auf Ihrem Host.,

Um einen NTP-Client zu installieren, führen Sie einfach den folgenden Befehl aus.

$ sudo apt-get install ntp $ sudo yum install ntp 

Wenn Sie diesen Befehl ausführen, wird standardmäßig ein NTP-Dienst (Network Time Service) auf Ihrem Host installiert und aktiviert.

Um dies sicherzustellen, erhalten Sie den Status des NTP-Dienstes.

$ sudo systemctl status ntp

Das Ausführen oder Neustarten des NTP-Dienstes aktiviert den NTP-Dienst standardmäßig nicht für den Befehl timedatectl.

Um die NTP-Synchronisation zu aktivieren, geben Sie die Option“ set-ntp “ an.,

$ timedatectl set-ntp true

Führen Sie erneut einen einfachen Befehl timedatectl aus, um sicherzustellen, dass alles ordnungsgemäß ausgeführt wird.

Super!

Sie haben das Datum unter Linux mit ntp korrekt eingestellt.

Datum unter Linux mit dem Datumsbefehl

Eine der Möglichkeiten, das Datum unter Linux festzulegen, ist die Verwendung des Datumsbefehls.

Einer der Hauptfehler dieses Ansatzes ist die Tatsache, dass Sie niemals so genau sein werden wie das Einstellen der Zeitzone und das Synchronisieren mit timesyncd oder chronyd.

Es ist jedoch immer noch möglich, dies auf diese Weise zu tun.,

Deaktivieren Sie zunächst die Zeitsynchronisation auf Ihrem Host, da sonst Ihre manuelle Datumsänderung jedes Mal vom Synchronisierungsdienst gelöscht wird.

$ sudo timedatectl set-ntp false

Um das Datum festzulegen, verwenden Sie“ date „mit der Option“- s“.

$ date -s <date>

Wenn Sie beispielsweise das Format JJJJ-MM-TT verwenden, können Sie das Datum auf diese Weise festlegen.

$ date -s '2019-10-17 12:00:00'Thu Oct 17 12:00:03 EDT 2019$ date -s '23 October 2019 12:00:00'Wed Oct 23 12:00:00 EDT 2019

Sie können auch Verknüpfungen verwenden, um das Datum einfach festzulegen.

Wenn Sie nur das Jahr ändern möchten, können Sie die Verknüpfung „Nächstes Jahr“ oder „Letztes Jahr“ verwenden.,

$ sudo date -s "next year"Sat Oct 17 12:02:21 EDT 2020$ sudo date -s "last year"Thu Oct 17 12:02:43 EDT 2018

Sie können auch nur den Monat oder den Tag mit den folgenden Verknüpfungen ändern.

Synchronisieren Sie Ihre Hardware-Uhr mit Ihrem Systemdatum

Bevor Sie mit Ihren täglichen Systemadministrationsaufgaben fortfahren, kann es eine gute Idee sein, Ihre Hardware-Uhr mit Ihrem Systemdatum zu synchronisieren.

Auf diese Weise stellen Sie sicher, dass Ihre beiden Uhren keine unterschiedlichen Daten und Stunden anzeigen.

Um Ihre Hardware-Uhr mit Ihrem Systemdatum zu synchronisieren, verwenden Sie den Befehl „hwclock“ mit der Option „–systohc“.

$ sudo hwclock --systohc$ sudo hwclock2019-10-23 13:03:56.466724-0400

Toll!,

Sie haben Ihre Hardware-Uhr erfolgreich mit Ihrem aktuellen Systemdatum synchronisiert.

Fazit

Im heutigen Tutorial haben Sie gelernt, wie Sie das Datum auf jedem Linux-System einfach festlegen können.

Sie haben gelernt, dass Sie die Zeitzone einstellen und den systemd-timesyncd-Daemon die Zeitsynchronisation durchführen lassen können.

Wenn Sie nach präziseren und effizienteren Zeitsynchronisationstechniken suchen, haben Sie gelernt, dass Sie entweder chrony oder NTP verwenden können, um dieses Ergebnis zu erzielen.

Sie haben auch gesehen, dass es möglich ist, das Datum mit dem Befehl date statisch festzulegen.,

Wenn Sie sich für Linux-Systemadministration interessieren, haben wir viele Tutorials zu diesem Thema.