Назад | Перейти на главную страницу

Do “service ntpd restart” and “ntpdate <ntp-server-ip>«Делать ту же работу?</ntp-server-ip>

Я часто получаю большие смещения при проверке ntpd с помощью ntpq -p, Я обычно перезапускаю демон ntp, и это решает проблему. Я хотел знать, могу ли я попробовать ntpdate <ntp-server-name> вместо перезапуска ntpd. Поскольку это производственная коробка, хотелось убедиться, прежде чем внедрять ее.

ntpdate и ntpd это разные инструменты, но один помогает другому.

ntpdate используется для немедленной синхронизации системных часов. Требуется время от ntpd сервер, имеющий статус «синхронизированный» (уровень 1–4).

ntpd сервис устанавливает системные часы мягко. На устранение отставания системных часов на несколько минут может потребоваться несколько часов. Все это время имеет статус синхронизирован stratum 16 - это означает, что системные часы не синхронизированы. Команда перезапуска службы service ntpd restart используется только для внесения изменений в свой файл конфигурации.

ntpdate обычно используется для синхронизации системных часов персонального компьютера при запуске. ntpd Сервис обычно используется для постоянной синхронизации системных часов сервера.

Нет. Цитирование man ntpdate:

ntpdate откажется устанавливать дату, если демон сервера NTP (например, ntpd) работает на том же хосте. При регулярном запуске ntpdate из cron в качестве альтернативы запуску демона, выполнение этого один раз в час или два приведет к достаточно точному отсчету времени, чтобы избежать смещения часов.

В различных широко используемых дистрибутивах Linux (включая CentOS, Debian и Ubuntu) ntpd начинается с -g flag по умолчанию, что означает, что он будет выполнять большой шаг часов при первой настройке, если это необходимо. Итак, в большинстве случаев ntpdate не нужно, и перезапуск ntpd будет предпочтительнее.

Но, как прокомментировал Свен, если ntpd работает какое-то время, и вы все еще получаете большое смещение, значит, что-то не так с вашей настройкой NTP или вашей сетью (или и тем, и другим).

Так что вместо перезапуска ntpd или бег ntpdate, попробуйте в первую очередь определить, почему вы оказались в такой ситуации.

Некоторые общие проблемы:

  1. Недостаточно сверстников - у вас должно быть не менее 4. Если у вас есть время, прочтите весь проект BCP.
  2. Используя server с публичный пул NTP вместо более нового pool директива - вы должны использовать последний, если ваш ntpd поддерживает это.
  3. Используя одноранговые узлы, которые расположены слишком далеко или с плохим подключением - попробуйте выбрать близких, надежных узлов. Еще лучше, добавьте к своим внешним узлам локальные эталонные часы для вашей сети. (В зависимости от вашей среды хорошим выбором могут быть BeagleBone, Raspberry Pi или LeoNTP с GPS-приемником.)
  4. Могут быть и другие причины, по которым вашему серверу не удается хорошо проводить время, например, ошибка ядра или плохие аппаратные часы. Включение loopstats, peerstats, и sysstats в твоем ntp.conf должно помочь отследить это.

Опубликуйте свою конфигурацию и вывод из ntpq -np и, надеюсь, мы сможем помочь вам решить эту проблему.