Синхронизация времени в линукс

Проверено на
Debian 3, 4, 5
Alt Linux 3, 4

Настроим один сервер (10.0.0.2) синхронизироваться с внешним миром , а остальные сервера в нашей подсети будут синхронизироваться с этим. Установим службу NTP

— Можно оставить настройки по умолчанию, но если они почему-либо не подходят, то можно прописать в /etc/ntp.conf например, такие:

— Для Debian пути будут несколько отличаться:

— Установим ntpdate для сверки времени с другими серверами. Сверяемся с сервером в Интернет

  • Stratum 1 — Это сервер первого уровня (если stratum 16, значит сервер сам не синхронизирован).
  • Offset — Расхождение во времени с этим сервером в секундах
  • delay — задержка синхронизации в секунда

— Если расхождение во времени слишком большое, то можно временно ускорить часы

либо их замедлить

и проверять выравнивание командой сверки. Это более корректный способ выравнивания, но можно сразу синхронизировать с сервером (ntpd должен быть остановлен)

— Проверим, что сервис запущен и включен в автозапуск.

Содержание

Синхронизация времени по NTP

NTP — это протокол синхронизации времени по сети. По существу клиенты запрашивают текущее время на сервере и используют его для установки своих собственных часов.

За этим простым описанием скрывается много сложностей — существуют уровни NTP серверов, где первый уровень подключен к атомным часам, а второй и третий уровни серверов распределяют на себя нагрузку по актуальным запросам из интернета. Кроме того клиентское приложение сложнее, чем вы можете подумать — оно компенсирует задержки соединения и регулирует время таким образом, чтобы не навредить другим процессам, запущенным на сервере. Но к счастью вся эта сложность скрыта от вас!

Читайте также  Сколько уровней в игре angry birds 2

Ubuntu использует ntpdate и ntpd.

ntpdate

Ubuntu стандартно устанавливается с ntpdate и будет запускать его при каждой загрузке один раз для установки времени по NTP серверу Ubuntu.

Сервис NTP ntpd вычисляет уход ваших системных часов и постоянно подправляет их, благодаря чему не происходит сильных изменений, что может приводить к непоследовательности в журналах. Ценой этому небольшое расходование мощности процессора и оперативной памяти, но для современного сервера это несущественно.

Установка

Для установки ntpd из терминала введите:

Настройка

Отредактируйте /etc/ntp.conf для добавления/удаления серверов. По умолчанию эти сервера такие:

После изменений конфигурационного файла вам надо перезапустить ntpd:

Просмотр статуса

Используйте ntpq для просмотра дополнительной информации:

Ссылки

Смотрите страницу энциклопедии Ubuntu Time для дополнительной информации.

Оригинал: How to Synchronize Time with NTP in Linux
Автор: Matei Cezar
Дата публикации: 20 апреля 2018 года
Перевод: А. Кривошей
Дата перевода: декабрь 2018 г.

Network Time Protocol (NTP) — это протокол, используемый для автоматической синхронизации системных часов компьютера по сети. Машина может выставлять системные часы по Coordinated Universal Time (UTC), а не по местному времени.

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

В большинстве систем Linux команда ntpdate не устанавливается по умолчанию. Чтобы установить ее, выполните приведенную ниже команду.

Пример команды ntpdate:

Чтобы просто запросить время сервера и не устанавливать часы, используя непривилегированный порт для отправки пакетов, чтобы обойти брандмауэры, выполните команду ntpdate со следующими флагами:

Читайте также  Скидки в честь открытия

Всегда старайтесь запрашивать и синхронизировать время с ближайшими NTP-серверами, доступными для вашей зоны. Список пулов серверов NTP можно найти по следующему адресу:

В новых дистрибутивах Linux, которые используют Systemd, вы также можете синхронизировать время через файл timesyncd.conf. Просто откройте файл для редактирования.

И добавьте или раскомментируйте следующие строки после оператора [Time], как показано ниже:

После редактирования файла введите команду timedatectl, чтобы активировать сборку клиента NTP в systemd.

После этого введите команду date для отображения системных часов.

Ссылка на основную публикацию
Adblock
detector