Was ich glaube, ist eine Systemdatei, /etc/cron.daily/ntpupdate
die
ntpdate ntp.ubuntu.com
täglich ausgeführt wird, um mit der Netzwerkzeit zu synchronisieren. Jeden Tag wird eine Ausgabe erzeugt, die der folgenden sehr ähnlich ist:
/etc/cron.daily/ntpupdate:
16 Jan 06:30:42 ntpdate[21446]:
step time server 91.189.94.4 offset -12.646804 sec
Ich bin mir nicht 91.189.94.4
sicher -12.646804 sec
, was das bedeutet, aber ich bin mir ziemlich sicher , dass mein Server etwa 12 Sekunden lang ausgeschaltet ist. Aber ich weiß nicht, warum es jeden Tag um ungefähr den gleichen Betrag abfällt. Dies ist eine Amazon EC2-Instanz, auf der Ubuntu ausgeführt wird.
Ich kann nur vermuten, dass es entweder 12 Sekunden pro Tag verliert / gewinnt oder dass etwas anderes die Zeit mit einer anderen Uhr synchronisiert, die um 12 Sekunden abweicht, und dann synchronisiere ich sie erneut.
Was soll ich tun, um dies weiter aufzuspüren? Ich sehe keine anderen Cron-Jobs in den /etc/cron.*
Verzeichnissen oder in den Cron-Jobs der Benutzer ...
AKTUALISIEREN
Ich dachte nur, ich würde teilen, dass ich diese Stunde anfing zu rennen, um zu sehen, ob es zu einer bestimmten Stunde einen großen Sprung geben würde. Dies ist die Stundenleistung:
16 Jan 15:17:04 ntpdate[8346]:
adjust time server 91.189.94.4 offset -0.464418 sec
Anscheinend ist die Uhr zu jeder vollen Stunde um ungefähr eine halbe Sekunde versetzt, was Sinn macht, dass die Uhr an jedem Tag (24 Stunden) um ungefähr 12 Sekunden versetzt ist. Schätze, die Uhr läuft nur schnell! Vielen Dank!
Antworten:
Es gibt eine Reihe von Faktoren, die dazu führen können, dass eine Software-Uhr langsam oder schnell läuft. Uhren auf virtuellen Servern sind besonders anfällig für eine ganze Klasse dieser Probleme. 12 Sekunden am Tag sind ziemlich schlecht, bis Sie auf virtuelle Boxen mit Uhren stoßen, die mit 180–200% Geschwindigkeit laufen! Uhren auf Laptops, die angehalten werden, können ebenfalls unter Zeitproblemen leiden.
Sie sollten in Betracht ziehen,
ntupdate
zugunsten von zu fallenntpd
. Der Paketname istntp
auf Debian (und vermutlich auch auf Ubuntu). Der NTP-Daemon synchronisiert Ihre Zeit viel proaktiver als ein Cron-Job, synchronisiert mit einem oder mehreren anderen NTP-Servern und hält Ihre Uhr viel genauer. Dies ist eine weitere Implementierung des gleichen Protokollsntpdate
, mit der Ausnahme, dassntpd
die Zeit kontinuierlich überwacht wird.Wenn Sie den (sehr geringen) Overhead von nicht möchten
ntpd
, sollten Sie in Betracht ziehen,ntpdate
einmal pro Stunde zu laufen . Angenommen, Sie haben jede Stunde 0,5 Sekunden weniger, dann sollte das ausreichen.quelle
CONFIG_NO_HZ
aktiviert.Beantworten Sie die andere Hälfte Ihrer Frage, warum dies geschieht: Computerhardware-Uhren sind notorisch ungenau, so dass eine Abweichung von 12 Sekunden an einem Tag ungewöhnlich ist, es aber nicht wirklich ungewöhnlich ist.
(Dies ist wahrscheinlich auf die häufige Verwendung der Netzwerkzeit zurückzuführen, sodass eine Abweichung von sogar 12 Sekunden pro Tag im Vergleich zu einer Uhr nur geringfügig ärgerlich ist - und die Hardwarefirmen daher billige Clock-Chips verwenden können. Physikalisch passiert wahrscheinlich, dass der Oszillator in Ihrem Clock-Chip nicht ganz richtig kalibriert ist und daher leicht, aber verlässlich langsam läuft.)
quelle
Ich vermute, dass ntp die Zeit Ihres Servers nicht aktualisiert, weil der Unterschied zu gering ist. Ich hatte ein ähnliches Problem, ich sah jeden Tag die gleiche Verzögerung, bis ich herausfand, dass ein kleiner Unterschied ntp nicht aktualisiert werden würde, bis ein bestimmter Schwellenwert vorliegt.
Überprüfen Sie Ihre Konfiguration auf den Mindestschwellenwert für die Synchronisierung.
quelle