So bringen Sie ntp dazu, mit gpsd das Datum und die Uhrzeit des Systems mit einem großen Versatz zu aktualisieren


7

Ich habe ein GPS an mein System angeschlossen. Wenn ich die Systemzeit so ändere, ntpddass sie weniger als 4 Stunden vor / hinter der GPS-Zeit liegt, wird sichergestellt, dass die Systemzeit an die des GPS angepasst wird. Wenn dieser Versatz jedoch länger als 4 Stunden ist, findet keine Aktualisierung statt.

Ich habe sichergestellt, dass ntpddie -gOption ausgeführt wird, sie funktioniert jedoch immer noch nicht, es sei denn, ich verwende normale NTP-Server, z. B. server 0.debian.pool.ntp.org iburstin /etc/ntp.conf . Nehmen wir jedoch an, dass das betreffende System während des normalen Betriebs keinen Internetzugang hat.

Die anderen relevanten Einstellungen in dieser Datei sind:

server 127.127.28.0 minpoll 4 maxpoll 4
fudge 127.127.28.0 time1 0.420 refid GPS

server 127.127.28.1 minpoll 4 maxpoll 4 prefer
fudge 127.127.28.1 refid GPS1

(Quelle: gpsdManpage)

Ich tinker panic 0habe diese Konfiguration sogar hinzugefügt , nur um sicherzugehen, aber immer noch kein Glück.


2
Habe ich richtig verstanden, dass Sie möchten, dass es überhaupt ohne Internetverbindung funktioniert?
Serge

Das ist richtig.
Tshepang

Antworten:


3

Ich entschied mich für ein gehen Work-around ... Ich benutze chrony .

Folgendes habe ich in der Konfigurationsdatei /etc/chrony/chrony.conf, um das GPS als Referenzuhr ( Quelle ) zu verwenden:

refclock SHM 0

Um dann tatsächlich chronygroße Offset-Anpassungen anstelle der normalen schrittweisen Anpassungen vornehmen zu können, habe ich dies derselben Konfigurationsdatei hinzugefügt:

makestep 1000 -1

Dies bedeutet, dass die Schrittanpassung erfolgt, wenn die Hardware-Uhr um mindestens 1000 Sekunden ausgeschaltet ist. -1bedeutet, versuchen Sie so oft wie nötig, um mit der Referenzuhr übereinzustimmen.

Ich habe die anderen Einstellungen intakt gelassen, wie von Debian Wheezy bereitgestellt.


3

Die Überprüfung des 4-Stunden-Limits ist in ntpd / refclock_shm.c (ntp-4.2.8p7) implementiert, und das Setzen des Werts '1' auf flag1 in /etc/ntp.conf scheint diese Überprüfung zu stoppen.

 server 127.127.28.0 minpoll 4 maxpoll 4 prefer
 fudge 127.127.28.0 refid GPS stratum 4
 fudge 127.127.28.0 time1 0.113  # coarse processing delay offset
 fudge 127.127.28.0 flag1 1      # ignore difference limit

Ich verwende ntpd 4.2.8p3 auf einem RaspberryPi.


1
Obwohl ich meine Bedenken habe, ob es sich um denselben Code handelt, der ntpdmöglicherweise 2012 ausgeführt wurde, klärt sich wahrscheinlich, woher das Limit stammt (+1).
gro♀
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.