[linux-l] NTP Client aufsetzen (Debian 4.0)

Lutz Willek willek at gmx.de
Mo Sep 24 07:00:25 CEST 2007


Axel Weiss schrieb:

Hi, Allgemein und speziell für Debian habe ich Dir das mal weiter unten 
beschrieben.

@ BSD/Suse/Fedora/Gentoo/<add_your_distribution> Nutzer:

Mich würde interressieren, ob unten gesagtes für Eure Systeme genau so 
gilt, besonders die FEINEN ABWEICHUNGEN interressieren mich. Rießig 
freuen würde ich mich über eine Rückmeldung aus der BSD-Fraktion. Bitte 
auch einen kurzen Satz, wenn es genau so abläuft.


...
> Wie angedeutet, komme ich ja aus der SuSE-Welt. Mit yast habe ich einmal
> den NTP-Client angeworfen und immer die korrekte Zeit gehabt. Bei Debian
> lese ich, dass es bewusst keine 'Standard'-Konfiguration gibt, weil es
> sowieso jeder anders haben will. Leider kein Hinweis wo ich weiter lesen
> soll um 'meine' Konfiguration aufzusetzen, darum meine Anfrage hier.

Eigentlich ist das alles einfach. Wir haben drei verschiedene Zeiten, 
die wir erst einmal auseinander halten müssen, und das ist wirklich das 
schwierigste an der ganzen Sache....

Also, Deine Hardware hat eine eingebaute Uhr, die mehr oder wenig genau 
ist. Diese Uhr kannst Du im Bios einstellen.

Von der Bios-Zeit nimmt sich das Betriebssystem einmalig beim starten 
die Zeit und verwaltet sie dann unabhängig von der Hardware-Zeit, das 
ganze nenne ich mal "Systemzeit". (???folgendes nur für Debian???) Beim 
Herunterfahren des Rechners wird dann die Hardware-Uhr nach der der 
Systemzeit gestellt.

Die Systemzeit stellst Du am besten mit dem Kommando ntpdate ein, also 
beispielsweise:

ntpdate zeit.fu-berlin.de

Manche Leute packen sich diesen Befehl in ein Startskript oder in ein 
Skript, das nach einem Verbindungsaufbau mit dem Internet ausgeführt wird.

Dann gibt es noch die Ortszeit, also das, was Du als Benutzer oder in 
den Logdateien zu sehen bekommst. Die Ortszeit ergibt sich aus der 
Systemzeit, auf der dann die Sommer/Winterzeit sowie die Zeitzone 
addiert wird.

Die Ortszeit stellst Du normalerweise nur einmal beim Installieren ein, 
  es gibt auch spezielle Installationsmethoden bei denen das nicht 
gemacht wird, Du musst es dann nachholen. Für die Zeitzoneneinstellung 
in Debian ist das Paket "tzdata" verantwortlich. Du solltest dieses 
Paket installieren, warscheinlich ist das aber schon Installiert.

Das einstellen der Zeitzone geht dann entweder über das Paketsystem:

dpkg-reconfigure tzdata

oder Du benutzt das mitgelieferte Programm tzselect, oder Du 
konfigurierst die Konfigurationsdatei /etc/timezone per Hand. Wie auch 
immer Du Dich entscheidest, wenn Dein Rechner in Deutschland steht 
sollte in dieser DAtei dann "Europe/Berlin" stehen.



Jetzt kann es vorkommen, das Deine Uhr nicht wirklich syncron läuft, Du 
willst eine automatische Anpassung haben.
Dazu gibt es das Programm  ntpd, das sich automatisch mit einem ganzen 
Pool von Zeitservern im Internet verbindet und die Uhr automatisch 
nachstellt. Das ganze funktioniert so hochgenau, das sogar die 
Ungenauigkeit der Hardwareuhr berechnet werden kann und in gewissen 
Grenzen ausgeglichen wird. Das bedeutet, das sogar bei einer nicht 
bestehenden Internetverbindung Deine Uhr sehr sehr genau ist.

Das Programm ntpd stellt die Zeit nicht "hart" oder in "Sprüngen" ein, 
sondern "staucht" oder "dehnt" die Systemzeit etwas, so das die genaue 
Zeit erst nach einer gewissen Einlaufphase eingestellt ist. Außerdem 
verweigert ntpd seine Dienste, wenn die festgestellte Systemzeit und die 
von den Zeitservern bekommene Zeit mehr als einige dutzend Sekunden 
auseinander liegt. Deshalb dürfte bei Dir die Zeit nicht automatisch 
gestellt worden sein, vermute ich.

Warum dieses Verhalten erwünscht ist kannst Du ja in den Hilfeseiten 
nachlesen, es reicht sich zu merken das ntpd die Zeit sehr genau stellt, 
das jedoch nicht tut wenn die gemessene Systemzeit zu falsch ist.

Du installierst ntpd mit dem Befehl:
aptitude install ntp

ntpd enthält (???nur bei Debian???) beides, den Client und den Server. 
Wenn Du einfach nur Deine Zeit syncronisieren willst musst Du nichts 
weiter tun, das Paket ntp ist darauf schon richtig konfiguriert. Du 
musst die Konfiguration nur verändern, wenn Du selbst Zeitserver 
anbieten möchtest, beispielsweise in einem Netzwerk ist das manchmal 
sinnvoll.

So, der ganze Ablauf in Kurzfassung für Debian:

aptitude install ntpdate ntp tzdata
/etc/init.d/ntp stop
ntpdate zeit.fu-berlin.de
hwclock --systohc
dpkg-reconfigure tzdata
/etc/init.d/ntp start

Damit sollte eigentlich _alles_ gut sein.

LG Lutz Willek






Mehr Informationen über die Mailingliste linux-l