Я пытаюсь настроить сервер GPS NTP на моем SBC под управлением Ubuntu 20.04 (безголовый), но у меня возникла проблема с конфигурацией.
При перезагрузке получаю следующее:
$ntpq -p
удаленный refid st t при достижении опроса джиттер смещения задержки
================================================== =============================
*_шлюз 163.237.218.18 2 и 22 64 1 2,727 0,011 0,159
/etc/ntp.conf говорит:
пул 1.ubuntu.pool.ntp.org iburst
пул 2.ubuntu.pool.ntp.org iburst
пул 3.ubuntu.pool.ntp.org iburst
# Используйте ntp-сервер Ubuntu в качестве запасного варианта.
#пул ntp.ubuntu.com
# Конфигурация контроля доступа; см. /usr/share/doc/ntp-doc/html/accopt.html для
# подробности. Веб-страница <http://support.ntp.org/bin/view/Support/AccessRestrictions>
# также может быть полезно.
#
# Обратите внимание, что «ограничение» применяется как к серверам, так и к клиентам, поэтому конфигурация
# которые могут быть предназначены для блокировки запросов от определенных клиентов, также могут заканчиваться
# блокировка ответов от ваших собственных вышестоящих серверов.
# По умолчанию обмениваться временем со всеми, но не разрешать настройку.
ограничить -4 по умолчанию kod notrap nomodify nopeer noquery limited
ограничить -6 по умолчанию kod notrap nomodify nopeer noquery limited
# Локальные пользователи могут более внимательно опрашивать сервер ntp.
ограничить 127.0.0.1
ограничить ::1
# Необходимо для добавления записей пула
ограничить источник notrap nomodify noquery
# Клиенты из этой (пример!) подсети имеют неограниченный доступ, но только если
# криптографически аутентифицирован.
#restrict 192.168.123.0 маска 255.255.255.0 notrust
# Если вы хотите предоставить время для вашей локальной подсети, измените следующую строку.
# (Опять же, адрес приведен только в качестве примера.)
#трансляция 192.168.123.255
# Если вы хотите слушать передачи времени в вашей локальной подсети, раскомментируйте
# следующие строки. Пожалуйста, делайте это, только если вы доверяете всем в сети!
#отключить авторизацию
#broadcastclient
# Справочник по серийным данным GPS
сервер 127.127.28.0 минполл 4 максполл 4
выдумка 127.127.28.0 время1 0.0 рефид GPS
# Ссылка GPS PPS
сервер 127.127.28.1 minpoll 4 maxpoll 4 предпочитает
выдумка 127.127.28.1 refid PPS
/etc/ntp/шаговые тикеры
пусто
Я нашел в Интернете конфигурацию для создания «устройства», которое будет работать как сервер времени GPS, и в нем было сказано сделать это:
$ вс -
# killall -9 gpsd ntpd
# gpsd -n /dev/ttyXX
# спать 2
# нтпд -gN
# спать 2
# cgps
и это работает
root@ubuntu:/home/zach# ntpq -p
удаленный refid st t при достижении опроса джиттер смещения задержки
================================================== =============================
0.ubuntu.pool.n .POOL. 16 р - 64 0 0,000 0,000 0,000
1.ubuntu.pool.n .POOL. 16 р - 64 0 0,000 0,000 0,000
2.ubuntu.pool.n .POOL. 16 р - 64 0 0,000 0,000 0,000
3.ubuntu.pool.n .POOL. 16 р - 64 0 0,000 0,000 0,000
*ШМ(0).GPS. 0 л 8 16 1 0,000 -40,232 0,000
ШМ(1).PPS. 0 л - 16 0 0,000 0,000 0,000
есть идеи, почему я не могу заставить ntp читать /etc/ntp.conf при загрузке?
РЕДАКТИРОВАТЬ:
Я не уверен, работает ли gpsd при запуске.
Я сделал dmesg | grep gps и ничего не подошло.
Затем я написал сценарий bash с этой строкой killall. Я не думаю, что он запустится (@startup sh в crontab), потому что он должен быть повышен.
Я попробовал как init.d (я действительно не знаю, что я там делаю), и я получаю сообщение об ошибке аудит: тип = 1400 аудит (1636322022.316:45): apparmor = "ОТКЛОНЕН" операция = "ptrace" профиль = "/usr/sbin/gpsd" pid = 2794 comm = "gpsd" запрашиваемая_маска = "прочитать" Denated_mask = "прочитать" peer="/usr/sbin/ntpd"