Genaue Zeiten sind nicht nur in mittleren bis großen Netzwerk sehr wichtig. Will man bei Ebay noch Rechtzeitig ein Gebot abgeben. ist die Zeit recht wichtig. Aber auch bei Datenbankapplicationen ist es sehr wichtig, keine zu großen Zeitabstände zu haben.
Installation
aptitude install ntp
Konfiguration
Im File /etc/ntp.conf müssen noch die NTP-Server angepasst werden, mit dem der Server syncronisert werden soll. NTP-Server findet man hier
- ntp.conf
# /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help driftfile /var/lib/ntp/ntp.drift # Enable this if you want statistics to be logged. #statsdir /var/log/ntpstats/ statistics loopstats peerstats clockstats filegen loopstats file loopstats type day enable filegen peerstats file peerstats type day enable filegen clockstats file clockstats type day enable # You do need to talk to an NTP server or two (or three). #server ntp.your-provider.example # pool.ntp.org maps to about 1000 low-stratum NTP servers. Your server will # pick a different set every time it starts up. Please consider joining the # pool: <http://www.pool.ntp.org/join.html> server 0.debian.pool.ntp.org iburst dynamic server 1.debian.pool.ntp.org iburst dynamic server 2.debian.pool.ntp.org iburst dynamic server 3.debian.pool.ntp.org iburst dynamic # Access control configuration; see /usr/share/doc/ntp-doc/html/accopt.html for # details. The web page <http://support.ntp.org/bin/view/Support/AccessRestrictions> # might also be helpful. # # Note that "restrict" applies to both servers and clients, so a configuration # that might be intended to block requests from certain clients could also end # up blocking replies from your own upstream servers. # By default, exchange time with everybody, but don't allow configuration. restrict -4 default kod notrap nomodify nopeer noquery restrict -6 default kod notrap nomodify nopeer noquery # Local users may interrogate the ntp server more closely. restrict 127.0.0.1 restrict ::1 # Clients from this (example!) subnet have unlimited access, but only if # cryptographically authenticated. #restrict 192.168.123.0 mask 255.255.255.0 notrust # If you want to provide time to your local subnet, change the next line. # (Again, the address is an example only.) #broadcast 192.168.123.255 # If you want to listen to time broadcasts on your local subnet, de-comment the # next lines. Please do this only if you trust everybody on the network! #disable auth #broadcastclient
Jetzt noch den Dienst neu starten und ein klein wenig warten, bis der eingen NTP-Server mit den Internet-NTP-Servern syncronisiert hat. Dies geschieht nicht „auf einen Schlag“. Die Uhr wird, je nach dem ob die Uhr vor oder nach geht, schneller oder langsamer laufen gelassen. Hört sich komisch an, ist aber so.
/etc/init.d/ntp restart
Die Zeit ist fertig syncronisiert, wenn bei ntpq -p
in einer Zeile ein Sternchen am anfang einer Zeile steht.
Überprüfen
Mit folgende Befehl kann man den Zustand überprüfen
ntpq -p
Die Ausgabe sieht dann so oder so ähnlich aus:
remote refid st t when poll reach delay offset jitter ============================================================================== *valiant.die-com 192.53.103.108 2 u 21 64 77 19.102 4.012 0.236 +gelbbaer.kn-bre 217.96.29.26 2 u 20 64 77 18.134 4.323 0.279 +netzwerkteufel. 192.53.103.108 2 u 24 64 77 0.979 -0.706 0.168 -bock136.dotsour 89.238.71.130 3 u 18 64 77 17.062 -1.118 2.578
Kleine Erklärung:
- die mit * gekennzeichnete Zeile ist der Server, mit dem syncronisiert wird
- die mit + gekennzeichnete Zeilen sind qualitativ hochwertige Zeitquellen, die ebenfalls als Referenzzeitquelle in Frage kommen, wenn die aktuell genutzte Zeitquelle nicht mehr verfügbar sein sollte
- die remote-Spalte zeigt die (Pseudo)-namen bzw. die IP der Server
- st ist die Stratum-Nummer. Je höher die Zahl, desto näher ist der Server an einer Atomuhr
- when zeigt die Anzahl der Sekunden seit dem letzten Polling-Zyklus an
- Bei reach stehen die erfolgreichen Errichbarkeiten des Zeitservers. Je höher, desto besser. Bestes ist 377
- Der Wert delay ist die Laufzeit zwischen der Anfrage des NTP-Daemons bis zum Eintreffen der Antwort
- Der Wert offset zeigt die Zeitdifferenz zwischen der Referenzzeit und der eigenen Systemzeit
- Der Wert jitter (oder disp) gibt die Größenordnung der Schwankungen zwischen einzelnen Zeitvergleichen an
Tipp
Da bei Ubuntu 8.04 der NTP-Dienst eine kleine Macke hat, sollte man den NTP-Daemon regelmäßig neu starten. Sollte man per Windows keine Zeit mehr bekommen bzw die Server syncronisieren sich nicht mehr, hat sich der Dienst wohl wieder mal aufgehängt.
Eine Lösung wäre, den NTP-Server pro Tag einmal neu zu starten.
Dazu folgende Zeile in Cron eintragen.
00 00 * * * root /etc/init.d/ntp restart
Mit dieser Zeile wird der NTP-Daemon jeden Tag um 0Uhr neugestartet
Bei Debian 6 Squeeze tritt dieser Fehler nicht auf und der NTP-Dienst muss auch nicht ständig neu gestartet werden
Uhrzeit des Serves setzen
Die Zeit, die mit den Internet-NTP-Servern syncronisert wird, gilt, solange kein Reboot gemacht wurde. Bei einem Neustart wird die Bios Uhrzeit genommen und wieder solange syncronisiert, bis die Zeit wieder passt. Sollte die Bios Uhr ein paar Minuten vor oder nach gehen, kann es etwas länger dauern, bis die Uhrzeit wieder syncron ist. Solange die Zeit nicht synron ist, wird diese auch nicht für andere Rechner bereitgestellt!
Deshalb sollte man die Hardware-Uhr von Zeit zu Zeit auf die syncronisierte Systemzeit setzten. Dies geht mit einem simplen
hwclock --systohc
Diskussion