У вас может быть брандмауэр блокирует порт 123, что может привести к тому, что ntp-сервер никогда не увидит серверов времени.
В моем случае ISP (Internet Service Provider) блокировал порты.
Сканирование портов 123 также не обнаружило блокировку.
Дымящийся пистолет заключался в том, что у меня временно есть два независимых интернет-канала. В linux, если я запускаю ntpq -p
(несколько раз) с первым подключенным интернет-каналом, ничего не обновляется, но с другим интернет-каналом я получаю обновления!
Как говорит @Jens A. Koch, ntpdate -u <server name>
действительно обходит это, ну, временно (без каламбура), это не исправляет проблему времени в долгосрочной перспективе.
С течением времени дрейф будет происходить как в ваших системных, так и в аппаратных часах. Также в моем случае двойная загрузка linux/windows приводит к дальнейшей путанице аппаратных часов (по часам).
Поэтому для обслуживания системных часов у вас должен быть открыт порт 123 для UDP.
Пожарьте, а не используйте -u
, вы также можете сделать это, что, как мне кажется, использует порт 123 (а не не “привилегированный” порт):
service ntp stop
, затем
ntpdate <server url>
(без -u) и, наконец,
service ntp start
.
Похоже, это позволяет обойти проблему блокировки порта, по крайней мере, чтобы установить часы один раз. Если -u
работает, но это не работает, то это довольно уверенный признак того, что порт заблокирован, или сервер не реагирует, …
Другой вопрос, который мне пришлось решить, это то, что для меня настройка Debian по умолчанию /etc/ntp.conf
включала 4 строки в пулы: debian.pool.ntp.org
. Ни один из этих серверов не работал. Я получил это сообщение об ошибке:
Преодоление ошибок debian.pool.ntp.org: Нет адреса, связанного с
имя хоста (-5) 24 марта 04:49:27 ntpdate[15115]: Не найден хост
debian.pool.ntp.org: Адрес, связанный с именем хоста (-5) 24 Март
04:49:27 ntpdate[15115]: серверы не могут быть использованы, выходя из
мне пришлось поменять серверы на us.pool.ntp.org
.