Ntpdate: сервер, подходящий для синхронизации, не найден

Мои часы выключены, поэтому я хотел бы синхронизировать его с помощью ntpdate. Я попробовал несколько разных NTP-серверов, но по какой-то причине я всегда получаю следующее сообщение об ошибке:

$ sudo ntpdate ntp.ubuntu.com4 Mar 12:27:35 ntpdate[1258]: no server suitable for synchronization found$ sudo ntpdate pool.ntp.org4 Mar 12:27:50 ntpdate[1267]: no server suitable for synchronization found$ sudo ntpdate de.pool.ntp.org4 Mar 12:28:01 ntpdate[1273]: no server suitable for synchronization found$ sudo ntpdate us.pool.ntp.org4 Mar 12:28:12 ntpdate[1276]: no server suitable for synchronization found

Связанные с этим вопросы

Я просмотрел связанные с этим вопросы, но ни один из них не решает мою проблему:

Вещи, которые я пробовал

Я установил пакет ntp

...и попытался использовать ntpd демон вместо ntpdate польза. Он также не синхронизирует мое время; демон запускается нормально, но мои часы остаются выключенными. Я даже пытался использовать точное /etc/ntp.conf из принятого ответа в последнем сообщении и перезапуск демона. Нет хода. В любом случае, я не хочу использовать демона. Я прекрасно понимаю, что ntpdate считается "устаревшим", и рекомендуется использовать ntpd -q вместо. Также смотрите здесь:

Но с тех пор, как ntpd для меня это тоже не работает, проблема кроется в другом. И я обнаружил, что предпочел бы не устанавливать никаких дополнительных пакетов только для синхронизации часов. ntpdate поставляется с предустановленной Ubuntu и это должно работать просто отлично. Итак, я удалил ntp снова посылка.

Может быть, порт 123 заблокирован?

Из этого поста:

...У меня возникла идея, что порт 123 может быть заблокирован с моего компьютера / сети на моем рабочем месте. Действительно,

$ sudo nmap -p123 -sU -P0 localhost...PORT    STATE  SERVICE123/udp closed ntp ...$ sudo ufw allow 123/udpRules updatedRules updated (v6)$ sudo nmap -p123 -sU -P0 localhost...PORT    STATE SERVICE123/udp open  ntp...

Но все же:

$ sudo ntpdate ntp.ubuntu.com4 Mar 13:06:16 ntpdate[4361]: no server suitable for synchronization found

Даже с учетом -u вариант, который сообщает ntpdate чтобы использовать непривилегированный порт для синхронизации (вместо порта 123), который, конечно, не заблокирован от моего рабочего места:

$ sudo ntpdate -u ntp.ubuntu.com4 Mar 13:06:28 ntpdate[4427]: no server suitable for synchronization found

Может быть, слои слишком высоки?

Наконец, из этого поста в serverfault:

...Я подумал, что, возможно, страты с серверов NTP слишком высоки. Однако это не так. Давайте посмотрим немного больше информации об отладке:

$ sudo ntpdate -dv ntp.ubuntu.com 4 Mar 13:12:24 ntpdate[4523]: ntpdate 4.2.6p5@1.2349-o Wed Oct  9 19:08:07 UTC 2013 (1)Looking for host ntp.ubuntu.com and service ntphost found : golem.canonical.comtransmit(91.189.89.199)transmit(91.189.94.4)transmit(91.189.89.199)transmit(91.189.94.4)transmit(91.189.89.199)transmit(91.189.94.4)transmit(91.189.89.199)transmit(91.189.94.4)transmit(91.189.89.199)transmit(91.189.94.4)91.189.89.199: Server dropped: no data91.189.94.4: Server dropped: no dataserver 91.189.89.199, port 123stratum 0, precision 0, leap 00, trust 000refid [91.189.89.199], delay 0.00000, dispersion 64.00000transmitted 4, in filter 4reference time:    00000000.00000000  Mon, Jan  1 1900  1:00:00.000originate timestamp: 00000000.00000000  Mon, Jan  1 1900  1:00:00.000transmit timestamp:  d6c041ae.e6166441  Tue, Mar  4 2014 13:12:30.898filter delay:  0.00000  0.00000  0.00000  0.00000          0.00000  0.00000  0.00000  0.00000 filter offset: 0.000000 0.000000 0.000000 0.000000         0.000000 0.000000 0.000000 0.000000delay 0.00000, dispersion 64.00000offset 0.000000server 91.189.94.4, port 123stratum 0, precision 0, leap 00, trust 000refid [91.189.94.4], delay 0.00000, dispersion 64.00000transmitted 4, in filter 4reference time:    00000000.00000000  Mon, Jan  1 1900  1:00:00.000originate timestamp: 00000000.00000000  Mon, Jan  1 1900  1:00:00.000transmit timestamp:  d6c041af.1948fc50  Tue, Mar  4 2014 13:12:31.098filter delay:  0.00000  0.00000  0.00000  0.00000          0.00000  0.00000  0.00000  0.00000 filter offset: 0.000000 0.000000 0.000000 0.000000         0.000000 0.000000 0.000000 0.000000delay 0.00000, dispersion 64.00000offset 0.000000 4 Mar 13:12:33 ntpdate[4523]: no server suitable for synchronization found

Пфиииууууу... это было длинно, извините за это. Я в тупике. Какие-нибудь зацепки?

Обновление: дополнительная информация

Независимо от того, является ли NTP-сервер HOSTNAME цифры в /etc/ntp.conf, и независимо от того , является ли ntpd служба запущена или нет, всякий раз, когда я запускаю sudo ntpdate -u HOSTNAME, Я получаю no server suitable for synchronization found. То же самое, когда ntpd сервис - это нет бегу, и я пропускать то -u вариант. Когда ntpd обслуживание является бегу, и я опускаю -u вариант, я вместо этого получаю the NTP socket is in use, exiting.

Также:

$ timedatectl status      Local time: Wed 2014-03-05 13:11:54 CET  Universal time: Wed 2014-03-05 12:11:54 UTC        Timezone: Europe/Berlin (CET, +0100)     NTP enabled: yesNTP synchronized: yes RTC in local TZ: no      DST active: no Last DST change: DST ended at                  Sun 2013-10-27 02:59:59 CEST                  Sun 2013-10-27 02:00:00 CET Next DST change: DST begins (the clock jumps one hour forward) at                  Sun 2014-03-30 01:59:59 CET                  Sun 2014-03-30 03:00:00 CEST

Но время UTC здесь неверно. Прямо сейчас время UTC составляет 11:11, не 12:11.

И:

$ sudo hwclock --showWed 05 Mar 2014 01:11:56 PM CET  -0.625627 seconds

Ваш хостинг-провайдер блокирует ntp-пакеты. Этот жесткий подход был применен некоторыми интернет-провайдерами в ответ на DDoS-атаки. Вы можете видеть, что ntpdate отправляет пакеты из ntpdate -vd :

transmit(91.189.94.4)transmit(91.189.89.199)transmit(91.189.94.4)transmit(91.189.89.199)

Я бы связался с вашим провайдером и спросил, блокируют ли они внешние запросы ntp и есть ли у них локальный сервер, который вы можете использовать для синхронизации времени.

Есть еще пара неясных возможностей, но их трудно исключить, поскольку вы не публиковали никаких журналов из системного журнала.

Однако это не ответ ntp...

sudo date -s "$(wget -qSO- --max-redirect=0 google.com 2>&1 | grep Date: | cut -d' ' -f5-8)Z"

это и версия curl здесь.

Используйте htpdate

Если передача ntp заблокирована в вашей сети, установите htpdate. Он синхронизирует время по протоколу http. Точность будет составлять 0,5 секунды, согласно справочной странице.

sudo apt-get install htpdatesudo htpdate -a google.com

служба htpdate запустится при установке пакета. Время будет обновлено немедленно, если есть подключение к Интернету.

У меня была такая же проблема, и вот как я ее решил.Я дал подробный ответ сверху донизу. Возможно, вы захотите перейти к середине моего ответа или просто обратитесь к приведенным ниже скриншотам, чтобы понять его с первого взгляда.

Первый установите ntpdate (очевидно, вы это сделали)

sudo apt-get install ntpdate

следующий Вам необходимо настроить ntp с серверами следующим образом:

Вы должны, по крайней мере, установить следующий параметр в конфигурационном файле /etc/ntp.conf:server

Например, откройте файл /etc/ntp.conf с помощью текстового редактора nano:

sudo nano /etc/ntp.conf

Найдите параметр сервера и, если он пуст, задайте его следующим образом:

server pool.ntp.org

Но обычно в ubuntu уже некоторые серверы предварительно написаны, что может быть

server 0.ubuntu.pool.ntp.orgserver 1.ubuntu.pool.ntp.orgserver 2.ubuntu.pool.ntp.orgserver 3.ubuntu.pool.ntp.org

enter image description here

Затем сохраните файл и перезапустите службу ntpd:

sudo /etc/init.d/ntpd start

Вы можете немедленно синхронизировать системные часы с сервером NTP с помощью следующей команды:

sudo ntpdate pool.ntp.org

или просто запустите уже определенные серверы

sudo ntpdate 0.ubuntu.pool.ntp.org

или другие серверы, определенные с помощью server

обычно

sudo ntpdate <one of the servername in /etc/ntp.conf>

но после этого есть вероятность, что вы получите сообщение об ошибке NTP socket in use как показано ниже:

enter image description here

В таком случае просто беги

ntpdate -u pool.ntp.org 

для обновления при запуске ntp deamon

ИЛИ просто остановите демон, обновите и запустите его снова следующим образом:

sudo ntpdate pool.ntp.orgsudo service ntp stopsudo ntpdate pool.ntp.orgsudo service ntp start

и вы получите

enter image description here

Подобно ответу Алекса, это сработало для меня, чтобы обойти брандмауэр порта ntp:

sudo date -s "$(curl http://s3.amazonaws.com -v 2>&1 | \  grep "Date: " | awk '{ print $3 " " $5 " " $4 " " $7 " " $6 " GMT"}')"

Привет, смотрите мой комментарий к вашему ответу. Я попытался добавить сервер pool.ntp.org в /etc/ntp.conf, но ntpdate -u pool.ntp.org выдает ту же ошибку. Я также попробовал это с ntp.ubuntu.com (добавление его в /etc/ntp.conf, повторный запуск службы ntp, повторный запуск ntpdate -u на том самом сервере, который я только что добавил в /etc/ntp.conf). Подводя итог, ** не имеет значения, упоминается ли сервер, с которым я пытаюсь синхронизироваться, в файле /etc/ntp.conf'**. Я получаю ошибку "нет подходящего сервера..." во всех случаях (за исключением случаев, когда запущена служба ntp* и* Я опускаю опцию-u, тогда я получаю ошибку NTP socket in use`).

вы сказали, что запустили sudo ntpdate ntp.ubuntu.com "но вы сделали это после добавления ntp.ubuntu.com поле сервера to `/etc/ntp.conf? Если нет, см. Следующий ответ

попробуйте `sudo ntpdate 0.ubuntu.pool.ntp.org

Хорошо, я также попробовал sudo ntpdate 0.ubuntu.pool.ntp.org , который уже находится в файле /etc/ntp.conf. Не повезло - та же ошибка.