Ich führe einige Experimente in einem Netzwerk von etwa 10 geografisch verstreuten Remote-Linux-Computern durch.
Ich vermute, dass bei einigen von ihnen Taktabweichungen auftreten, die jedoch nur vorübergehend auftreten (z. B. einmal pro Woche oder zweimal pro Monat).
Ich habe mich gefragt, ob es Tools gibt, mit denen sich solche Taktabweichungen erkennen und quantifizieren lassen. Außerdem frage ich mich, ob Taktabweichung der richtige Begriff für das ist, was ich beobachte, oder ob man es Taktsynchronisierung nennen könnte.
Antwort1
Versuchen Sie, die Uhren auf die richtige Zeit zu synchronisieren, oder versuchen Sie zu ermitteln, wie genau die Echtzeituhr tatsächlich ist, ohne synchronisiert zu sein?
Wenn Sie nur möchten, dass die Zeiten korrekt sind, gibt es eine ganze Hierarchie von Zeitservern, mit denen Systeme synchronisiert werden können. Diese sind oft in das Betriebssystem integriert, obwohl Sie normalerweise Zeitserver angeben können. Außerdem kann ein System mit einem Zeitserver synchronisiert werden und dann seinen eigenen Zeitserver ausführen, mit dem die anderen Systeme synchronisiert werden.
Ich habe Programme gesehen und in der Vergangenheit sogar selbst verwendet, die nicht nur mit einer Standardzeit synchronisieren, sondern auch die Abweichung des lokalen Computers seit der letzten Synchronisierung berücksichtigen. Ich habe dies in der Vergangenheit verwendet, als wir zeitweise keine Internetverbindung hatten, sodass das Programm die Zeit anhand des Verlaufs der erwarteten Abweichung korrigierte.
Wenn bei beiden Methoden die Korrektur zu groß ist, wird normalerweise von einem Fehler ausgegangen und überhaupt keine Korrektur vorgenommen.
Hoffentlich verstehe ich Ihren Standpunkt nicht völlig falsch. :)
Antwort2
Verwenden Sie hierzu den NTP-Daemon.
Definieren Sie eine Anzahl von - unabhängigen - NTP-Servern, die kontaktiert werden sollen (ntp.conf, Server-Direktive). 3 Server sind gut, mehr sind besser.
Das Netzwerkzeitprotokoll sortiert „schlechte“ Zeitquellen aus. Sehen Sie sich die Ausgabe an, ntpq -p
nachdem Sie es ntpd
ein paar Stunden lang ausgeführt haben.
Sie sehen, welcher primäre Server ausgewählt wurde, welche als "gut" und welche als "schlecht" gelten. Die Ausgabe enthält außerdemJitterund Latenz (Versatz). Dies sind wahrscheinlich die Werte, nach denen Sie suchen ...
Antwort3
Das Crony-Dienstprogramm verfügt über eine Drift-Datei. Siehe:http://chrony.tuxfamily.org/manual.html#Configuration-options-overview
Ich kenne das Format dieser Datei nicht, da ich sie selbst noch nicht installiert habe. Sie enthält einen Befehl zum Anzeigen der Drift-Informationen: chronyc sourcestats -v
Ich plane, Crony zunächst auf meinen virtuellen Maschinen zu installieren.
Diese Seite sieht hilfreich aus:http://www.markus-gattol.name/ws/time.html
Antwort4
Ich musste gestern selbst den Grad der Abweichung zwischen zwei Linux-Systemen überprüfen. Bevor ich nach Tools suchte, verwendete ich diese unwissenschaftliche Methode, die für meine Zwecke (Vergleich der Zeitstempel der Protokollausgaben der beiden Systeme) ausreichend gute Ergebnisse lieferte.
- Starten Sie eine Putty-Sitzung auf jedem System und richten Sie sie nebeneinander aus
Führen Sie den folgenden Befehl auf beiden Systemen aus:
$ while true; do date +%H:%M:%S.%N; done
- Machen Sie einen Screenshot und vergleichen Sie die letzten Einträge in jedem Fenster.
Könnte für jemanden in der Not nützlich sein!