64

Время в моей системе по какой-то причине неверно.
мне нужно запустить обновление, но я не могу
это ошибка

ntpdate pool.ntp.org
31 Aug 12:31:59 ntpdate[3108]: the NTP socket is in use, exiting

Я просто перезагрузился, я не знаю, как что-то может быть in use .

4 ответа4

140

Если вы хотите выполнить ntpdate с уже запущенным и запущенным демоном ntp , используйте следующую команду:

# ntpdate -u pool.ntp.org

и он будет использовать другой порт.

70

Он используется, потому что служба ntp вероятно, работает. Вы не упомянули, какой Linux вы используете, поэтому предполагается, что у вас установлена service (что вы используете систему System V):

$ sudo ntpdate pool.ntp.org
31 Aug 19:05:55 ntpdate[8911]: the NTP socket is in use, exiting
$ sudo service ntp stop
[ ok ] Stopping NTP server: ntpd.
$ sudo ntpdate pool.ntp.org
31 Aug 19:07:11 ntpdate[10355]: adjust time server 46.29.176.115 offset -0.002893 sec
$ sudo service ntp start
2

Простой однострочник для синхронизации ваших часов:

ntpdate -u ptbtime1.ptb.de && hwclock -w
0

Вы могли бы иметь порт 123 блокировки межсетевого экрана, который может заставить сервер ntp никогда не видеть серверы времени.

В моем случае мой интернет-провайдер блокировал порты.

Сканирование порта 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 .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .