Wie stelle ich Raspbian so ein, dass der primäre Zeitserver time.nist.gov verwendet wird?

8

Ich habe mehrere Rpi3s mit Raspbian. Sie sammeln Daten und ich benutze FileZilla, um Daten von einem zum anderen zu kopieren. Im Idealfall kopiere ich nur Dateien, die Änderungen aufweisen oder neu sind.

FileZilla kann auf einem PC unter installiert werden

FileZilla herunterladen (filezilla-project.org)

FileZilla kann mit dem folgenden Befehl in Raspbian installiert werden:

sudo apt-get update -y
sudo apt-get install FileZilla 

Ich habe die Optionen in FileZilla so eingestellt, dass vorhandene Dateien nur überschrieben werden, wenn sie neuer sind. Ich verwende auch chmod -w in meinen Archivverzeichnissen auf den Zielcomputern, damit nur neue Dateien kopiert werden können.

FileZilla verbringt jedoch viel zu viel Zeit damit, bereits vorhandene Dateien zu kopieren, da die Uhren auf den Raspbians zu stark variieren.

Ich möchte sie alle auf einen primären Standard setzen, damit sie besser übereinstimmen und so die Übertragung identischer Dateien minimieren.

Laut der NIST-Seite schlägt das National Bureau of Standards vor, time.nist.gov als Adresse zu verwenden, die ein funktionierendes System unter allen verfügbaren NTP-Servern der Ebene 1 erreicht:

NIST Internet Time Server

Meine Frage steht im Titel: Wie stelle ich Raspbian so ein, dass der primäre Zeitserver time.nist.gov verwendet wird?

SDsolar
quelle
Die Uhren sollten sich nicht so stark unterscheiden ... Wie oft versuchen Sie, Daten abzurufen?
Jacobm001
1
Die standardmäßig installierten Stratum-16-Pools würden dazu führen, dass sie sich um mehr als den Schwellenwert von einer Sekunde unterscheiden, was sowohl FileZilla als auch ROBOCOPY dazu veranlasst, zu glauben, dass es sich um eine neuere Datei handelt. Dies verweist direkt auf eine Stratum-1-Quelle. Keine zusätzlichen Sprünge dazwischen. Sowohl Linux als auch Windows verwenden Pools, müssen jedoch nicht verwendet werden. time.nist.gov ist klug genug, um den schnellsten Server beim National Bureau of Standards oder der Navy zu finden. Das Endergebnis ist wirklich erstaunlich. Zeitersparnis von 10: 1 oder so. Außerdem werden SD-Karten verwendet, um Verschleiß zu sparen. Sehr empfehlenswert.
SDsolar
Bevor Sie dies versuchen, verwenden Sie ntpq -p, um den St-Wert zu notieren. Das zeigt, wie viele Sprünge Sie von der Hauptuhr entfernt sind. Im Allgemeinen wird es ungefähr 20 sein. Unser Ziel ist St = 1
SDsolar

Antworten:

7

Die Zeitservereinstellungen werden in gespeichert. /etc/ntp.confÖffnen Sie daher Ihren bevorzugten Editor und nehmen Sie diese Änderung vor.

sudo nano /etc/ntp.conf

Der entsprechende Abschnitt sieht folgendermaßen aus:

Geben Sie hier die Bildbeschreibung ein

Sie müssen es also nur so ändern, dass es auf allen relevanten Computern so aussieht:

Geben Sie hier die Bildbeschreibung ein

Starten Sie sie dann neu.

Voila, die Systeme verwenden jetzt alle die NIST / NBS-Hauptuhr zur Synchronisierung.

Mit diesem Befehl können Sie überprüfen, ob es auf Ebene 1 funktioniert:

ntpq -p

Welches gab mir diese Ausgabe:

Geben Sie hier die Bildbeschreibung ein

FileZilla läuft jetzt unglaublich schneller, da es mehr Dateien überspringen kann!

Erstaunlicher Unterschied. Die Zeitsynchronisation ist eine hervorragende Erfahrung.

Dies ist das Beste, was über das Internet erreicht werden kann

time.nist.gov ist ein Load-Balancer, der auf den besten Server für einen bestimmten Standort verweist.


GPS bietet eine bessere Genauigkeit, ist jedoch nicht so einfach einzurichten.

Hier finden Sie Fragen und Antworten zum Einrichten eines U-Blox 7-G-Mouse-USB-GPS auf dem Pi:

Wie kann ich mein G-Mouse USB GPS für die Verwendung mit Raspbian einrichten?

In diesem Artikel wird beschrieben, wie Sie die Software für das GPS einrichten und zum Laufen bringen. Wir brauchen noch jemanden, der erklärt, wie man damit einen lokalen autorisierenden NTP-Server erstellt, den alle anderen Linux-Computer als Referenz verwenden können, um die bestmögliche Zeitsynchronisation mit dem Raspberry Pi 3B und Raspbian zu erreichen.

Beachten Sie, wie Google es macht. Sie verfügen über GPS- und Atomuhren in jedem Rechenzentrum auf der ganzen Welt:

GOOGLE SPANS GESAMTER PLANET MIT GPS-ANGEGEBENER DATENBANK (von Wired)


In Windows ist diese Änderung noch einfacher. Klicken Sie einfach auf die Uhr und folgen Sie den Anweisungen, um die Internetzeit in time.nist.gov zu ändern und dann zu aktualisieren.

Auf diese Weise sind selbst Übertragungen in und aus Windows (für Festplatten-Backups) VIEL schneller, da Dateien mit demselben Erstellungsdatum auf beiden Seiten übersprungen werden.

Dies hat den angenehmen Nebeneffekt, dass die Zeit, die ROBOCOPY benötigt, um auch auf ein Backup-Laufwerk zu gelangen, minimiert wird.

SDsolar
quelle
Der gleiche Ansatz funktioniert mit Ubuntu 14.04 LTS. Außer, dass sie noch eine weitere Zeile für einen Fallback-Server direkt unter diesem Block haben. Ich habe es auskommentiert, weil time.nist.gov auf der Clientseite keine Backup-Server-Definitionen benötigt. Es ist eine intelligente URL, die das am schnellsten reagierende Stratum-1-System findet. Die Hauptuhr.
SDsolar
Ubuntu 16.04 LTS erfordert zunächst die Installation von ntp. Hier sind die grundlegenden Anweisungen: help.ubuntu.com/lts/serverguide/NTP.html - Sobald es installiert ist, ist der Rest ähnlich - der einzige wirkliche Unterschied besteht darin, dass die Zeilen mit Pool beginnen und die eine Zeile, die Sie aktivieren, benötigt wird mit dem Server wie oben gezeigt gestartet werden. 16.04 verfügt jedoch über viel strengere Dateiberechtigungen, sodass die Arbeit im su-Modus ausgeführt werden muss. Wenn Sie Ihr Root-Passwort vergessen haben, können Sie es mithilfe von sudo passwd root von Ihrer normalen Eingabeaufforderung zurücksetzen. Dann funktioniert der Befehl su.
SDsolar
Beachten Sie, dass in der Spalte St das Stratum angezeigt wird und der Wert 1 oder 2 ist und St 1 priorisiert wird. With the pools it is more like 20. In diesem Fall ist jedoch Stratum-1 für die höchstmögliche Genauigkeit zu sehen.
SDsolar
Übrigens können Sie anstelle von ntpq -p auch ntpq -c-Peers verwenden
SDsolar
2

Ich habe seit Raspbian Jessie ein Problem mit persönlich ausgewählten NTP-Sites. Es scheint, dass jemand beschlossen hat, die Einstellung der Debian-Poolserver bei jedem Start in /etc/ntp.conf zu erzwingen. Gestern auf dieser Site habe ich festgestellt, dass das Skript /etc/init.d/ntp der Schuldige ist. Durch einfaches Bearbeiten der Datei wird das Verschieben der Poolserver in die Datei ntp.conf vermieden. Die Skriptanweisungen ersetzen nicht die gesamte Datei, sondern alle Server, die Sie möglicherweise eingefügt oder ersetzt haben, sodass alle anderen Änderungen außerhalb des Serverdefinitionsbereichs wie GPS, PPS usw. unberührt bleiben.

Bearbeiten Sie einfach /etc/ntp.conf und suchen und kommentieren Sie die folgenden Zeilen:

    # if [ -e /var/lib/ntp/ntp.conf.dhcp ]; then
    #     NTPD_OPTS="$NTPD_OPTS -c /var/lib/ntp/ntp.conf.dhcp"
    # fi

Dadurch werden die Änderungen beim Booten beseitigt, und ntpd verwendet die Datei /etc/ntp.conf unverändert.

Tom
quelle