Dieses Paket wurde initial von Gilbert Forkel (E-MAIL gforkel@web.de) zusammengestellt und wurde von Jürgen Edner (E-MAIL juergen@eisfair.org) überarbeitet.
Jeder Computer besitzt zwei Uhren, eine Hardware- und eine Software-Uhr. Die Hardware-Uhr befindet sich auf der Systemplatine des Rechners (Motherboard) und läuft auch bei ausgeschaltetem Rechner weiter. Eine Batterie sorgt für die Spannungsversorgung im ausgeschalteten Zustand. Startet man nun den Linux-Server, so nimmt die Software- oder auch Systemuhr, nachdem sie ihre initiale Zeit und das Datum von der Hardware-Uhr bezogen hat, ihren Dienst auf. Da die Systemuhr der Prozessorlast unterliegt führt dies zwangsweise dazu, dass nach einiger Zeit beide Uhren nicht mehr synchron laufen.
An dieser Stelle kommt das Netdate-Paket ins Spiel.
Beim Rechnerstart, manuell, oder in regelmäßig Intervallen über einen Cron-Job gesteuert, wird nun die Systemuhr mit einem Zeitserver im Internet oder im lokalen Netzwerk abgeglichen. Anschließend wird die Hardware-Uhr nach diesen Vorgaben eingestellt.
Das Netdate-Paket besteht aus folgenden Komponenten:
Dieses Paket benötigt zum Zeitabgleich Zugriff auf einen Zeitserver im Internet oder lokalen Netzwerk (Intranet). Standardmäßig wird für den Abgleich das UDP-Protokoll verwendet.
Das Netdate-Paket wird über das Setup-Menü installiert. Wird eine ältere Paketversion vorgefunden, so wird diese deinstalliert bevor die neuen Programmdateien installiert werden. Nach dem Installieren der Programmdateien wird direkt der Konfigurations-Editor gestartet um die Konfiguration anzupassen. Nach Beendigung dieses Schrittes werden die Konfigurationsdateien generiert und alle benötigten Programme gestartet.
Das Menü im Setup-Programm ist wie folgt aufgebaut:
Die Menüpunkte dürften selbsterklärend sein, da sie keinerlei weitere Eingabe erwarten. Deshalb wird auf deren Funktion nicht weiter eingegangen.
Die Konfiguration kann über den Menüpunkt 'Edit configuration' geändert werden. Standardmäßig wird der Editor aufgerufen, der in der Environment- Konfiguration über die Variable 'EDITOR' festgelegt wurde. Wird dies bestätigt, werden über ein Skript die Anpassungen umgehend wirksam gemacht.
In der Konfigurationsdatei, die über das Menü zugänglich ist, sind folgende Parameter vorhanden; wer sie von Hand editieren will findet sie unter /etc/config.d/netdate.
Gültige Werte: yes, no
Standardeinstellung: START_NETDATE='yes'
Gültige Werte: yes, no
Standardeinstellung: NETDATE_LOGGING='yes'
Gültige Werte: yes, no
Standardeinstellung: NETDATE_SYNC_TIME_ON_STARTUP='yes'
ACHTUNG
Bei der Zeitsynchronisation treten in letzter Zeit vermehrt
Probleme auf, weil von den Zeitservern das standardmäßige für den
Zugriff verwendete 'udp'-Protokoll gesperrt wurde. Dies kann, in
Kombination mit einer nicht optimalen Timeout-Behandlung des
netdate-Programms, dazu führen, dass der Zeitabgleich z.B. beim
Systemstart scheitert. Falls das beschriebene Fehlerbild auftritt,
sollte man versuchen dem Zeitserver ein 'tcp' voranzustellen.
Gültige Werte: Name eines Zeitservers
Standardeinstellung: NETDATE_TIMESERVER='tcp ptbtime1.ptb.de tcp ptbtime2.ptb.de'
Gültige Werte: yes, no
Standardeinstellung: NETDATE_CRON='yes'
1 - Minuten, 2 - Stunden, 3 - Tag des Monats, 4 - Monat, 5 - Wochentag.
D.h. bei Verwendung der Standardeinstellung wird stündlich, um 8 Minuten nach der voller Stunde, ein Zeitabgleich durchgeführt. Wer Näheres über die verwendete Befehlssyntax erfahren möchte, sollte über eine Internet-Suchmaschine nach 'man' und 'crontab' suchen.
Gültige Werte: Crontab-spezifischer Parametereintrag
Standardeinstellung: NETDATE_CRON_SCHEDULE='8 0-23/1 * * *'
Wer mehr über Zeiten, Zeitabgleich oder Zeitserver erfahren möchte kann über die folgende URL weitere Informationen im Internet abrufen:
http://www.bldrdoc.gov/timefreq/service/time-servers.html