Obwohl es den Anschein haben mag, dass die Zeiteinstellungen automatisch erfolgen sollten, können sie unter Linux oft fehlerhaft oder ungenau konfiguriert sein. Da die Materie der Zeiteinstellungen für durchschnittliche Benutzer etwas komplex erscheinen kann, werden wir hier die Einrichtung der Netzwerkzeitsynchronisierung unter Linux detailliert erläutern.
Neben der Konfiguration von NTP gehen wir auch darauf ein, wie man das ärgerliche Zeitproblem beim Dual-Boot von Linux und Windows lösen kann.
Konfiguration des Netzwerkzeitprotokolls (NTP)
Die Synchronisierung der Systemuhr Ihres Linux-Rechners mit Zeitservern ist der gängigste Weg, um eine präzise Zeit zu erhalten. In den meisten Linux-Distributionen geschieht dies automatisch. Jedoch verwendet nicht jede Distribution standardmäßig den NTPd-Daemon. Selbst jene, die ihn nutzen, können Fehler aufweisen. Daher erklären wir, wie man den Network Time Protocol-Daemon unter Linux manuell konfiguriert, um solche Probleme zu beheben.
Beginnen Sie, indem Sie ein Terminal öffnen und NTP installieren, falls es auf Ihrem Rechner noch nicht vorhanden ist. In den meisten Fällen ist es bereits installiert, aber um sicherzugehen, folgen hier die Befehle für die gängigsten modernen Linux-Distributionen:
Ubuntu
sudo apt install ntp
Debian
sudo apt-get install ntp
Arch Linux
sudo pacman -S ntp
Fedora
sudo dnf install ntp
OpenSUSE
sudo zypper install ntp
Sobald die Software installiert ist, muss eine Verbindung zu einem NTP-Server hergestellt werden. Standardmäßig haben die meisten Linux-Distributionen ihre eigenen NTP-Server in der Datei `/etc/ntp.conf` konfiguriert. Wenn Sie jedoch diese Server als unzuverlässig betrachten, können Sie auf einen zuverlässigeren Server, wie den offiziellen Google NTP-Server, umsteigen.
Um den Google NTP-Server hinzuzufügen, bearbeiten Sie die Datei `ntp.conf`:
sudo nano /etc/ntp.conf
Sie können, wenn gewünscht, alle vorhandenen Einträge löschen und durch die folgenden ersetzen (obwohl dies nicht unbedingt empfohlen wird). Für beste Ergebnisse fügen Sie die Google NTP-Einträge am Anfang der Datei ein.
Hinweis: Die Option `iburst` am Ende jedes Eintrags ist wichtig. `iburst` sendet einen „Burst“ von Paketen an die Server, nur wenn es Verbindungsprobleme mit dem Zeitserver gibt.
server time.google.com iburst server time2.google.com iburst server time3.google.com iburst
Nachdem Sie die Änderungen vorgenommen haben, speichern Sie die Konfigurationsdatei in Nano mit Strg + O und beenden Sie den Editor mit Strg + X.
Konfiguration der Zeitzone
NTP kann die Zeit automatisch von Servern synchronisieren, muss aber zuerst die Zeitzone kennen. Normalerweise fragt Ihr Linux-System bei der Ersteinrichtung nach der Zeitzone und stellt sie ein. Sollte während der Installation etwas schief gelaufen sein, kann dies manuell mit `tzselect` korrigiert werden.
Öffnen Sie ein Terminal und starten Sie das Zeitzonen-Tool:
tzselect
Das Tool `tzselect` führt Sie durch den Prozess der Konfiguration der korrekten Zeitzone. Danach können Sie NTPd starten.
Starten von NTP
Die Verbindungen zu den Zeitservern sind eingerichtet. Der nächste Schritt besteht darin, das Systemd-Init-System zu verwenden, um NTP beim Booten zu starten. Beachten Sie, dass Sie, falls Ihr Linux-Betriebssystem nicht systemd wie die meisten modernen Systeme verwendet, eine Alternative zu diesen Befehlen finden müssen.
Starten Sie zuerst NTPd:
sudo systemctl start ntpd.service
Aktivieren Sie dann den Start beim Booten mit `systemctl enable`:
sudo systemctl enable ntpd.service
Nach Ausführung der obigen Befehle sollte die Zeit sofort korrekt synchronisiert werden, da die UTC-Zeit in Ihrem BIOS jetzt korrekt ist (dank `tzselect`).
Verwendung der lokalen Zeit
Neben NTP gibt es unter Linux auch andere Möglichkeiten, die Zeit einzustellen. Die häufigste Alternative ist die Verwendung der „lokalen Zeit“. Bei der lokalen Zeit wird Linux angewiesen, die Zeit zu behalten, ohne sie mit externen Quellen zu synchronisieren. Im Wesentlichen wird die Zeit intern verwaltet. Dies ist zwar weniger zuverlässig, aber eine Option. Die Frage ist, warum sollte man das tun?
Der Hauptgrund, warum man die lokale Zeit anstelle von NTP verwenden würde, ist das Problem, dass Dual-Boot-Systeme die Zeit durcheinanderbringen können. Wenn Sie jemals Linux geladen und dann Windows 10 gestartet haben, werden Sie feststellen, dass die Zeit falsch ist. Dies liegt daran, dass beide Betriebssysteme über einen Zeitsynchronisierungsdienst verfügen und miteinander „kämpfen“. Der beste Weg, um dieses Problem zu lösen, ist die Deaktivierung der Zeitsynchronisation in Linux.
Hinweis: Beachten Sie, dass Windows möglicherweise immer noch Probleme macht, selbst wenn Sie Linux auf die Verwendung der lokalen Zeit umgestellt haben. Überprüfen Sie daher auch die Windows-Zeiteinstellungen, um weitere Konflikte zwischen den beiden Betriebssystemen zu vermeiden.
Die Ausführung von `timedatectl` sollte das Problem beheben:
sudo timedatectl set-local-rtc 1
Nachdem Sie die lokale Zeit aktiviert haben, müssen Sie Ihren Computer möglicherweise neu starten. Nach der erneuten Anmeldung sollte alles die lokale Zeit verwenden.
Möchten Sie die lokale Zeit wieder deaktivieren? Dann müssen Sie den Befehl `timedatectl` erneut ausführen. Verwenden Sie den folgenden Befehl:
sudo timedatectl set-local-rtc 0
Starten Sie Ihren Linux-Rechner wie zuvor zur Sicherheit neu. Bei der nächsten Anmeldung sollte die lokale Zeit nicht mehr verwendet werden.