19.2. Настройка локального сервера времени

Проблема

Требуется создать локальный сервер времени, синхронизируемый с общедоступным сервером времени. Локальные клиенты сети будут связываться с этим сервером для синхронизации. Компьютер, выполняющий функции локального сервера времени, должен быть постоянно подключён к Интернету.

Решение

Сначала установите или обновите поддержку NTP на компьютере, который будет выполнять функции сервера времени для локальной сети. Для надёжности установите также ntpdate, что облегчит начальную настройку времени.

Остановите демона ntpd, если он работает в системе:

# /etc/init.d/ntpd stop

Для Debian используйте:

# /etc/init.d/ntp-server stop

Добавьте следующий фрагмент в файл /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

Выполните начальную синхронизацию времени с помощью ntpdate:

# ntpdate pool.ntp.org

Затем запустите ntpd:

# /etc/init.d/ntpd start

Для Debian используйте:

# /etc/init.d/ntp-server start

Команда ntpq -p позволяет проверить статус соединения с серверами:

# ntpq -p
remote           refid      st t when poll reach   delay   offset  jitter
+clock.fmt.he.ne .GPS.      1 u   37   64  377   105.562   26.771   2.539
+dewley.1ib.ci.ph reaper.twc.weat 2 u   25   64  377   398.666  -30.285  51.555
*c1ock.sjc.he.ne .CDMA.     1 u   21   64  377    98.269   15.298   4.000

Подождите несколько минут, чтобы появились данные о подключении. Начальная синхронизация может занять до 30 минут. Звёздочка (*) и плюс (+) перед именем сервера указывают на успешное соединение и синхронизацию.

ВНИМАНИЕ

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

Комментарий

Убедитесь, что устанавливаемый пакет называется ntp, а не xntp. В Debian понадобятся пакеты ntp-simple, ntp-doc и ntp-server.

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

Хотя команда ntpd -g поддерживает мгновенное обновление времени, при отклонениях свыше 60 минут она может быть медленнее, чем ntpdate. Поэтому ntpdate всё ещё остаётся актуальной утилитой для быстрой начальной корректировки.

Включение трёх записей server pool.ntp.org в ntp.conf позволяет минимизировать риск временной недоступности серверов. Пул pool.ntp.org автоматически обновляет список серверов, что повышает стабильность работы сети.

Для обеспечения максимальной скорости синхронизации можно воспользоваться другими пулами NTP. В разделе 19.5 приведены рекомендации по выбору и настройке альтернативных серверов.

См. также

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