суббота, 20 апреля 2013 г.

Настройка NTP в Debian

Проблема: Всё вроде было хорошо, всё работало - и тут вы замечаете, что часы на разных компьютерах показывают разное время. Что делать?
Решение: ставим программу ntp, позволяющую быстро синхронизировать часы локального компьютера с серверами точного времени, подсоединёнными ко Всемирной Паутине. Теперь ваши часы в Linux будут всегда показывать точное время, синхронизированное с атомными часами.

Быстро синхронизируем время
Сначала нам бы однократно синхронизировать часы, а уж потом думать о том, как это свалить на компьютер. В Debian GNU/Linux это делается (как и всё прочее) очень просто. Ставим пакеты:

#apt-get install ntp ntpdate
Теперь выбираем сервер точного времени, поближе к вам и не очень загруженный. Список таких серверов можно посмотреть здесь. После чего сервер времени (вместо указанного сервера можно выбрать другой из списка) не мешало бы пощупать:
# ntpdate ntp.remco.org
На что он ответит примерно следующее:
18 Aug 17:32:35 ntpdate[3558]: step time server 80.127.4.179 offset -358.420872 sec
То есть насколько наши часы отстают от правильных. Это мы сейчас устраним. Теперь однократно синхронизируемся с часами на сервере точного времени:
# ntpdate -bs ntp.remco.org
Всё, ваши часы теперь идут точно.
Опять-таки, кроме этого сервера есть ещё куча других, выбирайте ближайший к вам.

Сваливаем синхронизацию времени на компьютер
В принципе, для отдельно стоящей машины можно написать простенький скрипт и запускать время от времени. Дело в том, что если ставить ntp-server на локальной машине, он будет каждый раз при загрузке пытаться связаться с сервером точного времени. Это чревато увеличением времени загрузки на минуту, а то и более. Если уж так хочется - ищем в районе прямой видимости UNIX-машину, постоянно подключенную к Интернету, и ставим сервер туда, а потом используем её как локальное зеркало точного времени.
Ставим пакет:

#apt-get install ntp-server
После этого лезем в конфиг /etc/ntp.conf и прописываем там правильное зеркало точного времени, например:
server ntplocal.example.com prefer
server timeserver.example.org
server ntp2a.example.net
А можно не лазить, настройки по умолчанию (в Debian, по крайней мере) разумны. При следующей перезагрузке / перезапуске ntp ваши часы снова синхронизируются.

Ссылки:
Краткая справка по настройке возможности получения точного времени здесь. Стоит почитать замечательную статью Линукс, Часы и Время и FreeBSD-шное руководство, в котором, в частности, сделан упор на "серверную" часть ntp.

Комментариев нет:

Отправить комментарий