Pytanie:
NTPd nie aktualizuje czasu
danielv
2014-05-05 12:02:31 UTC
view on stackexchange narkive permalink

Używam raspbian wheezy, zaktualizowanego do wszystkich najnowszych pakietów. Jedynym zainstalowanym na nim niestandardowym pakietem jest Java 8 firmy Oracle, wszystko inne i jej konfiguracja jest w magazynie.

Wczoraj zauważyłem, że czas RPI był nieprawidłowy (po krótkiej awarii zasilania). Zacząłem kopać i okazało się, że usługa NTPd nie aktualizuje czasu lokalnego. Najprawdopodobniej jest to tylko niedawny problem, ponieważ wcześniej miałem awarie zasilania i nigdy nie zauważyłem problemów z czasem.

Wygląda na to, że demon NTP działa. Kiedy zatrzymam usługę i ręcznie uruchomię ntpd

  sudo ntpd -gq  

Ma to na celu zaktualizowanie czasu i zakończenie. Ale tak się nigdy nie dzieje. Po prostu kontynuuje działanie, nic nie robiąc.

/ var / log / syslog rejestruje:

  5 maja 07:20:51 autohome ntpd [4111]: ntpd 4.2.6p5@1.2349-o piątek 18 maja 20:30:57 UTC 2012 (1) 5 maja 07:20:51 autohome ntpd [4111]: proto: precyzja = 1.000 usec 5 maja 07:20: 51 autohome ntpd [4111]: Słuchaj i upuszczaj na 0 v4wildcard 0.0.0.0 UDP 123 maja 5 07:20:51 autohome ntpd [4111]: Słuchaj normalnie na 1 lo 127.0.0.1 UDP 123 5 maja 07:20:51 autohome ntpd [4111 ]: Słuchaj normalnie na 2 eth0 192.168.1.120 UDP 123May 5 07:20:51 autohome ntpd [4111]: peers odświeżony 5 maja 07:20:51 autohome ntpd [4111]: Nasłuchiwanie na gnieździe routingu na fd # 19 w celu aktualizacji interfejsu  

Wydaje się, że sieć działa poprawnie, a domyślne serwery NTP w ntp.conf wydają się działać. ntp.conf jest standardowy (wyłączyłem tylko ipv6):

  # /etc/ntp.conf, konfiguracja dla ntpd; patrz ntp.conf (5), aby uzyskać helpdriftfile /var/lib/ntp/ntp.drift# Włącz tę opcję, jeśli chcesz, aby statystyki były rejestrowane. # statsdir / var / log / ntpstats / statistics loopstats peerstats clockstatsfilegen loopstats file loopstats type day enablefilegen peerstats file peerstats type day enablefilegen clockstats file clockstats type day enable # Musisz rozmawiać z serwerem NTP lub dwoma (lub trzema). # server ntp.your-provider.example
# pool.ntp.org mapuje do około 1000 serwerów NTP o niskiej warstwie. Twój serwer będzie # wybierał inny zestaw przy każdym uruchomieniu. Rozważ dołączenie do # pool: <hhttp: //www.pool.ntp.org/join.html>server 0.debian.pool.ntp.org iburstserver 1.debian.pool.ntp.org iburstserver 2.debian.pool.ntp. org iburstserver 3.debian.pool.ntp.org iburst # Konfiguracja kontroli dostępu; Zobacz /usr/share/doc/ntp-doc/html/accopt.html, aby uzyskać # szczegóły. Pomocna może być również strona internetowa <http: //support.ntp.org/bin/view/Support/AccessRestrictions>#. ## Zauważ, że „ogranicz” dotyczy zarówno serwerów, jak i klientów, więc konfiguracja, która może mieć na celu blokowanie żądania od niektórych klientów mogą również # blokować odpowiedzi z własnych serwerów nadrzędnych. # Domyślnie wymieniaj czas ze wszystkimi, ale nie zezwalaj na konfigurację.restrict -4 domyślny kod notrap nomodify nopeer noquery # ogranicz -6 domyślny kod notrap nomodify nopeer noquery # Lokalni użytkownicy mogą dokładniej przesłuchiwać serwer ntp .restrict 127.0.0.1 # limited :: 1 # Klienci z tej (na przykład!) podsieci mają nieograniczony dostęp, ale tylko jeśli # są uwierzytelnieni kryptograficznie. # ograniczają maskę 192.168.123.0 255.255. 255.0 notrust # Jeśli chcesz dać czas swojej lokalnej podsieci, zmień następną linię. # (Ponownie, adres jest tylko przykładem.) # Broadcast 192.168.123.255 # Jeśli chcesz słuchać transmisji czasu w lokalnej podsieci, usuń komentarz z # następnych linii. Zrób to tylko wtedy, gdy ufasz wszystkim w sieci! #Disable auth # broadcastclient  

Wersja ntpd dostarczana z Raspbian jest kompilowana bez debugowania, więc ntpd -d nie działa. Masz jakiś pomysł, co może to spowodować?

Baseny strasznie utrzymują dokładny czas. Upewnij się, że jesteś ustawiony na zegar główny: https://raspberrypi.stackexchange.com/questions/68811/how-do-i-set-raspbian-to-use-the-primary-time-server-time-nist- gov / 68812 # 68812
Cztery odpowiedzi:
danielv
2014-05-05 21:56:57 UTC
view on stackexchange narkive permalink

Zajęło mi trochę czasu, zanim zrozumiałem, co się dzieje, ale po zainstalowaniu tcpdump , monitorowaniu ruchu sieciowego i dokładniejszym przeczytaniu drobnego druku dokumentów NTPd, zdałem sobie sprawę, że NTPd wymaga nieograniczonego dostępu do UDP port 123 dla ruchu wychodzącego i przychodzącego.

Ponieważ nie jest to coś, co chcę robić w mojej sieci, odinstalowałem pakiet ntp i zainstalowałem openntpd (również w repozytorium).

Dwie minuty później i wszystko działało jak w zegarku.

To nieprawda: „NTPd wymaga nieograniczonego dostępu do portu UDP 123 zarówno dla ruchu wychodzącego, jak i przychodzącego”. Chciałbym usłyszeć, jakie reguły fw masz na miejscu, które działają z openntpd, a nie ntpd, mając tę ​​samą podstawową konfigurację (lista serwerów / dozwolonych klientów).
Fałszywy? To jest pobrane bezpośrednio z witryny NTP: http://support.ntp.org/bin/view/Support/TroubleshootingNTP sprawdź sekcję 9.8. I możesz sprawdzić za pomocą sniffera pakietów, że NTPd używa portu źródłowego 123, a openntpd używa dużych numerów portów
To oświadczenie pochodzi z „wiki wsparcia edytowanego przez społeczność” ntp. Stwierdzenie jest zbyt szerokie i mylące dla nowoprzybyłych. Skonfigurowałem wiele serwerów ntp, które znajdowały się za zaporami ogniowymi, które zezwalały tylko na ruch do iz mojego ntp i wybrane serwery nadrzędne.
Z całym szacunkiem, dopóki nie udowodnię, że jest inaczej, nie zignoruję tego, co jest napisane w oficjalnie usankcjonowanym przewodniku wsparcia, wiki lub nie, na podstawie komentarza od przypadkowego gościa w Internecie. Faktem jest, że NTPd używa portu UDP 123 jako portu źródłowego i docelowego, co może być problematyczne w przypadku różnych routerów przy przekazywaniu portów lub nawet po prostu blokowanym przez niektórych dostawców usług internetowych. Z drugiej strony, openntpd używa wysokich portów jako źródła, co jest bardziej poprawnym zachowaniem i eliminuje potrzebę majstrowania przy firewallu / NAT. Podsumowując, zgodnie z konfiguracją pakiety nie wracają do NTPd, podczas gdy openntpd po prostu działa.
FWIW Przerzuciłem się na OpenNTPd i po jakimś czasie wróciłem (czyli PITA). OpenNTP to sposób na rozmowy. Zasadniczo spamował mój syslog pełen wspaniałej roboty, co 60 sekund ... A dokumentacja jest w najlepszym przypadku niejasna. Nie znaleziono żadnej opcji ograniczenia gadatliwości. Na Raspbian brakuje miejsca na dysku, nie potrzebuję tam spamu.
Tom Vike
2014-12-03 00:02:42 UTC
view on stackexchange narkive permalink

Wystąpił również problem z synchronizacją ntpd, po ponownym uruchomieniu wystąpiło przesunięcie o -7294 sekund i ntpd nie mógł się zsynchronizować. Myślę, że limit dla ntpd to 127 sekund. Miałem ten sam problem na raspberrypi i bananapi. Rozwiązanie było takie samo w obu przypadkach. Tutaj używam Raspian_For_BananaPi_v3.1 na BananaPi. Przyczyną przesunięcia -7294 s było to, że skrypt /etc/init.d/ntp uruchamiał /var/lib/ntp/ntp.conf.dhcp jako plik konfiguracyjny dla ntpd (-c) ten plik używał 192.168.0.1 jako serwera czasowego. Który jest moim modemem internetowym z serwerem czasu, który miał przesunięcie -7294 sekund. Złożył skargę do mojego dostawcy Internetu, ale nie otrzymał jeszcze żadnej opinii.

Właśnie zakomentowałem trzy wiersze w /etc/init.d/ntp, aby naprawić problem:

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

wtedy ntpd użyje domyślnego pliku konfiguracyjnego /etc/ntp.conf.

Potem właśnie zmieniłem pule debian na lokalne (no) w /etc/ntp.conf:

# pool: <http: //www.pool.ntp. org / join.html>server 0.no.pool.ntp.org iburstserver 1.no.pool.ntp.org iburstserver 2.no.pool.ntp.org iburstserver 3.no.pool.ntp.org iburst  

wykonał restart i ntpd zaczął działać.

  bananapi @ Banana2 ~ $ sudo ntpq -p remote refid st t when poll reach delay offset jitter ====== ================================================== ====================== + ntp2.interpost. 139.112.153.51 2 u 66 1024373 15,085 -1,769 2,660 * ntp-ext.cosng.n 146.213.3.181 2 u 88 1024377 13,929 -3,778 4,319 + 2a02: 20c8: 1981: 192,36.144,22 2 u 1021 1024377 12,678 -2,927 2.763-ntp1.enuv.eu 192.36.143.150 2 u 194 1024 377 11.598 6.200 106.058  

Demon ntpd używa serwera czasu z * na początku, z przesunięciem 3,778 ms. Minie kilka godzin, zanim przesunięcie spadnie poniżej 10 ms.

mwd27
2016-05-22 01:44:18 UTC
view on stackexchange narkive permalink

Miałem ten sam problem, który został rozwiązany przez ponowne ustawienie strefy czasowej za pomocą raspi-config . Ustawiłem poprawnie strefę czasową przy pierwszym uruchomieniu Raspberry Pi, ale z jakiegoś powodu zapomniałem o tym / zignorowałem. Teraz automatycznie aktualizuje czas podczas rozruchu, jeśli jest połączony z Internetem.

  1. sudo raspi-config
  2. Wybierz Opcje internacjonalizacji
  3. Wybierz I2 Zmień strefę czasową
  4. Wybierz swój obszar geograficzny
  5. Wybierz najbliższe miasto
  6. Wybierz Zakończ
  7. Wybierz Tak , aby teraz ponownie uruchomić komputer
zsn
2014-05-05 12:17:38 UTC
view on stackexchange narkive permalink

Cóż, miałem podobne problemy z ciastami, które przez jakiś czas mnie niepokoiły… na pierwszym ustawiłem czas ręcznie (nie miałem połączenia z siecią), a inne rozwiązanie pojawiło się, gdy zmieniłem strefy czasowe i zrestartowałem. ..alternatywnie możesz zainstalować (sprzętowy) moduł zegara czasu rzeczywistego, jeśli możesz go znaleźć .. Czy zauważyłeś różne znaczniki czasu w dziennikach? I przepraszam, jeśli odpowiedź nie jest wystarczająco zwięzła ...

Możesz także spróbować dodać DAEMONS = (! Hwclock ntpd) w /etc/rc.conf i zrestartować komputer, aby sprawdzić, czy to wystarczy.
Dzięki. Ręczne ustawianie nie wchodzi w grę. Ten RPI obsługuje oprogramowanie automatyki domowej, a dokładny czas jest krytyczny (utknięcie bez ciepłej wody, ponieważ niedokładny zegar jest naprawdę denerwujący). Wydaje mi się, że zegar sprzętowy jest możliwy, ale naprawdę chciałbym najpierw spróbować rozwiązać problem NTPd. To właśnie powinien robić NTPd i działał do niedawna.
Ok ... wypróbuj tę linię w /etc/rc.conf i / lub sprawdź strefy czasowe, zobacz, czy to pomoże ...
Co masz na myśli, mówiąc „sprawdź strefy czasowe”? Poza tym w moim RPI nie ma /etc/rc.conf.
przepraszam, /etc/rc.local..; według stref czasowych Mam na myśli wybranie ich ponownie w raspi-config .. także możesz sprawdzić plik /etc/ntp.conf, aby upewnić się, że jest skonfigurowany (z jakich serwerów korzysta ..? )
Sprawdzę ponownie strefy czasowe, chociaż jestem prawie pewien, że są poprawnie skonfigurowane. W moim pytaniu zamieściłem plik ntp.conf, jest to domyślny, a serwery wydają się być prawidłowe.
http://www.pool.ntp.org/en/ dodaj kolejny serwer czasu z listy (po serwerze 3.debian.pool.ntp.org dodaj serwer 4. ....) i zrestartuj deamon
Nie. Próbowałem dodać serwery i całkowicie je wymienić, bez zmian.


To pytanie i odpowiedź zostało automatycznie przetłumaczone z języka angielskiego.Oryginalna treść jest dostępna na stackexchange, za co dziękujemy za licencję cc by-sa 3.0, w ramach której jest rozpowszechniana.
Loading...