SDB:Zeit über das Netz einstellen lassen

aus openSUSE, der freien Wissensdatenbank


Version: 6.0 - 7.3

Inhaltsverzeichnis

Frage

Wie kann man einen Timeserver unter Linux automatisch ansprechen?

Antwort

Mit Hilfe des xntp-Protokolls kann man seine Uhrzeit (und natürlich auch das Datum) immer aktuell halten. Dies ist speziell beim Betrieb von File- und Mailservern wichtig da sonst Zeitpunkte des Mailversands oder der Dateierstellung nicht nachvollziehbar sind.

Im Netzwerk (oder über Internet) muß ein Timeserver zugänglich sein. Üblicherweise verwendet man mittlerweile das ntp Protokoll zur Synchronisation der Zeit mit einem Zeitserver. Die Verwendung von netdate ist nicht empfohlen da dieses von der Laufzeit der Daten auf dem Netzwerk abhängt.

Wenn Sie eine SuSE Linux Version vor Version 7.2 einsetzen spielen Sie bitte unbedingt vor Benutzung von NTP das Security Update für NTP ein.

Vorausetzungen

Sie benötigen Zugriff auf einen Zeitserver und Sie dürfen keine Firewall verwenden die UDP Port 123 filtert da hierüber der Zeitabgleich erfolgt. Installieren Sie das Paket xntp um die im folgenden beschriebenen Programme zur Verfügung zu haben.

Einmaliges Stellen der Zeit bei Herstellen einer Einwahlverbindung

Um die momentane Uhrzeit auf die deutsche Referenzzeit der Physikalisch- Technischen Bundesanstalt zu setzen geben Sie beispielsweise das folgende Kommando am Prompt (hier fett geschrieben) als Benutzer root ein

konstriktor:~ # ntpdate ntp1.ptb.de
14 Feb 15:09:49 ntpdate[14591]: adjust time server 192.53.103.103 offset 0.000420 sec

Das Kommando zeigt ihnen also auch an wie stark Ihre Uhr vom angegebenen Zeitserver abweicht. Bekommen Sie keine Antwort ist meistens eine Firewall dazwischen die Ihre Datenpakete blockiert.

Einen Timeserver in Ihrer Nähe finden Sie über die folgende Seite heraus: http://www.eecis.udel.edu/~mills/ntp/clock2a.html

Danach sollte hwclock -w (bzw. hwclock -uw, wenn die Rechnerzeit auf GMT eingestellt ist) gestartet werden, siehe man hwclock.

Um dies bei jeder Interneteinwahl automatisch durchführen zu lassen, erstellen Sie die Datei /etc/ppp/ip-up.local und tragen dort die o.g. Befehle ein.

Mitführen der Zeit bei permanenter Netzanbindung

xntpd ist ein Daemon der die Zeit ständig mit einem Timeserver abgleicht. Xntpd berichtigt die Zeit nur in kleinen Schritten, es macht dies durch Dehnung, bzw. Stauchung der Systemzeit. Die Monotonie bleibt erhalten!

Probleme kann es daher geben, wenn die lokale Zeit zu stark (mehr als 10 Minuten) von der des Timeservers abweicht. In diesem Fall also einmal ntpdate und hwclock (s.o.) starten.

Konfiguration von XNTPD: Suchen und setzen Sie in /etc/rc.config:

START_XNTPD=yes

Um den Server einzustellen, mit dem synchronisiert werden soll müssen Sie die Datei /etc/ntp.conf editieren. Diese Datei kann bei Ihnen beispielsweise wie folgt aussehen (Kommentarzeilen hier der Übersicht halber nicht angegeben):

server ntp1.ptb.de
server ntp2.ptb.de
driftfile /etc/ntp.drift    # path for drift file
logfile   /var/log/ntp      # alternate log file

Führen Sie danach SuSEconfig aus und starten Sie dann den NTP-Daemon mit

rcxntpd start

Um zu überprüfen ob Ihr Zeitserver richtig läuft können Sie nach ein paar Minuten das Kommando ntpq verwenden (auch als normaler Benutzer). Geben Sie das fettgedruckte Kommando am Prompt ein.

konstriktor:~>/usr/sbin/ntpq -c peers
      remote           refid      st t when poll reach   delay   offset  jitter
 ==============================================================================
 *ntp1.ptb.de     .PTB.            1 u   32  128  377   42.371   -0.664   1.349
 +ntp2.ptb.de     .PTB.            1 u  100  128  377   43.329    0.121   3.259
 

Aus der Ausgabe können Sie sehen ob die Synchronisation mit den Zeitservern klappt (Das Zeichen in der ersten Spalte) und wie groß die Laufzeit der Pakete auf dem Netzwerk ist ("delay").

Ausführliche Dokumentation dazu finden Sie in /usr/share/doc/packages/xntp/ und online auf http://www.ntp.org/.

Weitere für die Zeiteinstellung relevante Variablen in /etc/rc.config (Kommentare siehe dort):

  • TIMEZONE - in Deutschland CET.
  • GMT - bestimmt, ob die Rechneruhr auf lokale oder GMT-Zeit eingestellt ist.

Auf der Seite http://www.eecis.udel.edu/~mills/ntp/clock1a.html finden Sie weitere öffentliche NTP Server

SDB:Rechneruhr einstellen


'Persönliche Werkzeuge
Andere Sprachen