Неможливо синхронізувати час за допомогою NTP


21

Коли я намагаюся синхронізувати час за допомогою NTP. За допомогою команди нижче

sudo ntpdate -b pool.ntp.org

Я отримую цю помилку, кажучи, що NTP-сокет використовується . Як це виправити?

18 Jan 05:53:49 ntpdate[21340]: the NTP socket is in use, exiting

Відповіді:


30

NTP-розетка використовується, виходить

Вказує на те, що у вас працює демон NTP, як правило, через ntpпакет. У вас не може бути дві програми, що регулюють годинник одночасно.

  1. Спочатку зупиніть поточний демон NTP:

    sudo service ntp stop
    
  2. Виконайте свою ntpdateкоманду.

  3. Запустіть демон NTP знову:

    sudo service ntp start
    

Фон

Демон NTP не буде робити великих кроків вперед або назад, але корисний для дуже плавних і малих переходів. Перш ніж це почне справно, синхронізуйте час, використовуючи ntpdateспочатку саме з цієї причини. Ви можете запитати статус демона так:

ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*chime1.surfnet. 194.171.167.130  2 u   59   64    7    3.159   -0.207   0.136
+chime2.surfnet. .GPS.            1 u   59   64    7    6.872   -0.592   0.091
[...]
 ns1.tudelft.nl  .INIT.          16 u    -   64    0    0.000    0.000   0.000
+ev001.tilaa.nl  193.67.79.202    2 u   55   64    7    4.038   -0.613   0.110

Ubuntu постачає openntpd, а не xnptd за замовчуванням? ntpqпоходить від xntpd.
Відновіть Моніку - М. Шредер

@ MartinSchröder Ти маєш рацію! :) Редагування зараз. Спасибі.
gertvdijk

Виправлення: ntpq - це реалізація посилання ntp. У 90-х та початку 00-х його називали xntpd, тепер це просто ntpd або ntpv4.
dfc

Чудове пояснення - я ніколи не знав, чому ntp не зробить великих стрибків.
Джеремі Гаек

+1 Я включив ntpd і очікував, що він виправить мій час (що минув 2 хвилини), як доказ, що він працює. Але, звичайно, це не зробить, оскільки "не зробить великих кроків вперед чи назад". Дякую за пояснення
матовий фрік

4

Якщо ви отримаєте Помилку, NTP socket in useяк показано нижче:

введіть тут опис зображення

У такому випадку просто запустіть

$ sudo service ntp stop
$ sudo ntpdate pool.ntp.org
$ sudo service ntp start

і ви отримаєте

введіть тут опис зображення

АБО ПРАВИЛЬНО РУБИТИ

sudo ntpdate -u pool.ntp.org

оновити із запущеним deamon ntpd


3
Не рекомендуйте людям запускати ntpdate під час запуску ntpd
dfc

1
Навіщо публікувати скріншоти з просто текстом? Скопіювати та вставити "просто працює". ;-)
gertvdijk

1
+1 для варіанту -u, який дозволяє уникнути хелі зупинки ntpd
dan carter

1

Поширена проблема полягає в тому, що люди виявляють, що їхній комп'ютер не оновлювався при призначеному переході на літній час (DST). Після розпізнавання користувач намагається виправити час за допомогою sudo ntpdate -b pool.ntp.orgабо подібного лише, щоб виявити, що NTP вже працює і просто не працює.

У загальному випадку NTP просто не можна довіряти, щоб виправити ваш годинник при переході DST. Наприклад, у NTP є випадки, коли він відмовляється встановити ваш годинник . Під час пошуку проблем з NTP ви отримуєте багато звернень, тому чітко обмеження NTP вплинули на багатьох людей. Я впевнений, що для будь-якого дизайнерського рішення NTP є вагомі причини, але це не змінює того факту, що йому не можна довіряти завжди робити те, що очікував середній користувач.

Не забудьте перевірити, чи важливо для вас певних цілей. У вас може бути більше удачі з автоматичним переходом DST, якщо ви вручну встановите правильний час незадовго до переходу.

З цим пересічним користувачем досить важко експериментувати, оскільки DST відбувається лише у двох випадках на рік.


0

Якщо ntp deamen встановлений і запущений, ви отримаєте ту ж помилку, що не можете налаштувати годинник через дві програми одночасно.

Якщо служба запущена, вона буде синхронізуватися з серверами, які перебувають у /etc/ntp.conf, тому час буде синхронізовано. Краще щовечора перезапускати демон ntp, так що якщо він зупиняється якось починається щодня, встановіть його в crontab.

crontab -e
@daily sudo service ntp restart >> /tmp/time.log

ви можете перевірити деталі синхронізації вашого сервера за допомогою команди нижче

ntpq -p
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.