Установка времени ntp из gpsd

Я пытаюсь настроить ntpd на получение времени из приемника GPS ( BU-353S4 ), но получаю некоторые ошибки.

Я использую ntpd 4.2.8.p6-3 и gpsd 3.16-2 на Arch Linux Arm. Я следил за учебником на вики-странице Arch , но в нем нет информации об устранении неполадок.

Журнал gpsd содержит запись

gpsd: ERROR: response: {"class": "ERROR", "message": "Нет такого устройства, как / dev / gps0"} \ x0d \ x0a

Повторяется каждые 6 секунд или около того, ничего кроме сообщений start, stop.

/ var / log / ntp.log содержит:

Listen and drop on 0 v6wildcard [::]:123
Listen and drop on 1 v4wildcard 0.0.0.0:123
Listen normally on 2 lo 127.0.0.1:123
Listen normally on 3 eth0 172.10.10.75:123
Listen normally on 4 lo [::1]:123
Listen normally on 5 eth0 [fe80::ba27:ebff:feba:af05%2]:123
Listening on routing socket on fd #22 for interface updates
GPSD_JSON(0): GPSD revision=3.16 release=3.16 protocol=3.11

ntpq -p выводит

    remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 GPSD_JSON(0)    .GPS.            0 l    -   64    0    0.000    0.000   0.000

/ etc / ntp. gpsd запущен под пользователем никто и ntpd запущен как пользователь ntp

1
задан 30 March 2016 в 13:22
2 ответа

gpsd запущен как никто, поэтому у него нет прав на чтение / dev / ttyUSB0 , на что он и жалуется.

Если вы добавите пользователя nobody в группу uucp , это должно исправить ситуацию, но это не рекомендуется. Или вы можете изменить режимы на / dev / ttyUSB0 на 666, что немного менее ужасно. Лучше всего было бы отредактировать конфигурацию запуска gpsd так, чтобы он запускался от имени другого пользователя, возможно gpsd , и сделать группу / dev / ttyUSB0 принадлежащей группе Основная группа gpsd (также, вероятно, gpsd ).

Если предположить, что gpsd устанавливает время, когда он сможет правильно считывать данные GPS, это позволит ntpd для объявления времени, зная (поскольку вы его настроили), что он получил его из источника stratum-0 (ntp).

2
ответ дан 3 December 2019 в 20:40

Будьте осторожны, вы должны «запустить gpsd на связанном / dev / gps0 , чтобы строка GPSD_JSON отображалась должным образом». Поэтому проверьте, работает ли ваш GPSD на / dev / gps0 или нет. Мой GPSD работает на / dev / ttyS0 на моем сервере, и после того, как я изменил УСТРОЙСТВА на / dev / gps0 в / etc / default / gpsd , NTPd может подключите GPSD.

0
ответ дан 3 December 2019 в 20:40

Теги

Похожие вопросы