SuSE Linux: Versionen 6.0 bis 7.3
Wie kann man einen Timeserver unter Linux automatisch ansprechen?
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.
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.
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.
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 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