19.6. Подключение к серверу времени при непостоянном подключении

Проблема

У вас нет постоянного подключения к Интернету — возможно, вы пользуетесь модемным подключением, взяли ноутбук в поездку и т. д. Как провести синхронизацию по серверу NTP?

Решение

Установите ntp и ntpdate. Остановите демона ntpd, если он работает в настоящий момент. Откройте файл /etc/ntp.conf и создайте служебные файлы, если они не существуют (владелец — root, разрешения 644):

#/etc/ntp.conf
driftfile /etc/ntp.drift
logfile /var/log/ntp.log
server pool.ntp.org
server pool.ntp.org
server pool.ntp.org

Пользователи Debian (или любой системы, где сценарии PPP размещаются в каталоге /etc/ppp/ip-up.d/) могут скопировать следующий скрипт:

#!/bin/bash
# Сценарий ntp с модемным подключением для Debian
/usr/sbin/ntpdate pool.ntp.org
if [ -x /etc/init.d/ntp-server ]; then
    /etc/init.d/ntp-server restart
fi

Владельцем сценария должен быть root (используйте chmod 744). Сценарий будет выполняться при каждом запуске PPP.

Для Red Hat и Fedora отредактируйте или создайте сценарий /etc/ppp/ip-up.local, добавив в него следующие строки:

#!/bin/bash
# В Red Hat и Fedora добавьте следующий фрагмент
# в /etc/ppp/ip-up.local
/usr/sbin/ntpdate pool.ntp.org
if [ -x /etc/init.d/ntpd ]; then
    /etc/init.d/ntpd restart
fi

ntpdate скорректирует время в первую минуту или две после подключения. Затем демон ntpd продолжит работу в фоновом режиме:

11 Feb 11:38:18 ntpdate[6796]: adjust time server 163.1.87.28 offset -0.01803 sec
ntpdate is updating the time
Starting NTP server: ntpd.

Если сервер удалённого доступа обслуживает локальную сеть Ethernet, настройте клиентские компьютеры, как описано в разделе 19.3.

Сценарии также легко адаптируются для компьютеров, подключающихся к частной сети с локальным сервером времени. В сценарии PPP свяжите вызов ntpdate с локальным сервером и включите ссылку на локальный сервер в /etc/ntp.conf. Это позволит выполнять синхронизацию времени даже при отсутствии доступа к внешнему Интернету, используя локальный сервер NTP. Использование локального сервера времени обеспечивает точную синхронизацию в корпоративных сетях, где важно поддерживать единое время для всех узлов, например, для точного времени записи журналов событий и синхронизации задач.

Настройка подключения к NTP-серверу особенно полезна для серверов, которые выполняют задачи по расписанию или ведут критически важные журналы. Регулярная синхронизация позволяет избежать накопления расхождений во времени, что может быть важно для безопасности и стабильности системы. Поддержание точного времени с использованием сценариев автоматической синхронизации помогает минимизировать влияние задержек подключения и повышает надёжность выполнения задач по времени.

См. также

Раздел 19.4; документация по дистрибутиву; локальная документация (/usr/share/doc/ntp-doc/html) или документация в Интернете (http://www.ntp.org/documentation.html); домашняя страница проекта pool.ntp.org (http://www.pool.ntp.org); веб-сайт ntp.org (http://www.ntp.org/); архивы группы Usenet comp.protocols.time.ntp.