Dedies-Board (https://www.dedies-board.de/wbb2/index.php)
- Linux (https://www.dedies-board.de/wbb2/board.php?boardid=30)
-- FAQs (https://www.dedies-board.de/wbb2/board.php?boardid=32)
--- debian und ntpdate (https://www.dedies-board.de/wbb2/thread.php?threadid=1674)


Geschrieben von Vimes am 03.10.2006 um 22:02:

  debian und ntpdate

Liebe Gemeinde,

die Uhr des Computers geht bekanntlich nicht unbedingt absolut genau. Bei manchen Modellen geht sie auch mal pro Tag gleich mal einige Minuten vor oder nach. So auch hier.

Abhilfe schafft ntpdate.

Installation:

discworld:~# aptitude install ntpdate
(wahlweise auch apt-get install ntpdate oder Installation über Synaptic oder aptitude mit ncurses)

Jetzt kann man mit

discworld:~# ntpdate SERVER

die Uhrzeit korrigieren lassen. Als SERVER muß ein ntp-Server angegeben werden, eine Liste gibt es z.B. hier: http://www.hullen.de/helmut/filebox/DCF77/ntpsrvr.html

Persönlich nutze ich einen T-Com-Server, daher sähe das bei mir so aus:

discworld:~# ntpdate ntp1.sda.t-online.de

Jetzt kann man das natürlich nach jedem Start als root eingeben, aber das ist ein wenig unpraktisch. Ungleich praktischer ist es, das wird bei jedem Bootvorgang automatisch durchgeführt (oder ein cronjob übernimmt das). So pedantisch bin ich nicht, daß ein cronjob nötig wäre, daher habe ich das ganze als startup-script eingetragen. Vorgehensweise:

discworld:~# vim /etc/init.d/ntpdate_v
#Anlegen einer Datei, statt vim nehme man den Lieblingseditor

In diese Datei trage man nun ein:

#!/bin/bash
ntpdate SERVER (bei mir also ntp1.sda.t-online.de)
exit 0

und speichere das ganze.

Jetzt muß die Datei ausführbar gemacht werden:

discworld:~# chmod a+x /etc/init.d/ntpdate_v

Als letzten Schritt muß dafür gesorgt werden, daß dieses Script bei jedem Systemstart geladen wird. Das habe ich über die Runlevel gelöst, bei mir über Runlevel 2:

discworld:~# cd /etc/rc2.d
discworld:/etc/rc2.d# ln -s ../init.d/ntpdate_v S19ntpdate_v

Warum aber heißt die Verknüpfung ausgerechnet S19ntpdate_v?

Schauen wir mal, was in dem Ordner rc2.d sonst noch rumliegt:
discworld:/etc/rc2.d# ls
README S19ntpdate_v S20makedev S99rc.local
S10sysklogd S20acpid S20openbsd-inetd S99rmnologin
S11klogd S20cupsys S89cron S99stop-bootlogd

S bezeichnet ein script, das beim Betreten des Runlevels 2 ausgeführt wird, die Nummer direkt dahinter gibt die Reihenfolge der Ausführung vor.
S19 bedeutet demnach, daß das Script hinter S11klogd, aber vor S20acpid ausgeführt wird.

Natürlich muß man das Script nicht aufs zweite Runlevel verlinken, allerdings sollte man beachten, daß die Internet-Verbindung bereits aktiv ist, wenn es ausgeführt wird, sonst klappt es nicht.

Beim nächsten Start wird nach dem Einloggen der ntp-Server befragt, die Uhrzeit automatisch korrigiert und ein kleiner Hinweis darauf auf den Bildschirm geschrieben. Das war's auch schon.

WICHTIG:
Wenn man nicht, wie ich, eine Überraschung erleben möchte, sollte man sicherstellen, daß man die korrekte Zeitzone ausgewählt hat. Hier hilft

discworld:~# tzconfig

Das gibt die aktuell eingestellte Zeitzone aus und erlaubt kinderleicht eine Änderung derselben.

MfG
Vimes