NTP — протокол синхронизации времени с другим сервером. Клиенты и используют текущее время на сервере для установки собственных часов.
Существуют уровни NTP серверов, где первый уровень подключен к атомным часам, а второй и третий уровни серверов распределяют на себя нагрузку по актуальным запросам из интернета. Кроме того клиентское приложение компенсирует задержки соединения и регулирует время таким образом, чтобы не навредить другим процессам, запущенным на сервере.
В рамках этой статьи рассказывать больше нет смысла, поэтому без лирических отступлений начнем с главного:
Установка NTP
$ sudo apt-get install ntp
После установки, займемся настройкой
Конфигурация NTP сервера на Ubuntu
$ sudo vi /etc/ntp.conf
Список серверов можно найти здесь Список NTP Серверов -> http://support.ntp.org/bin/view/Servers/WebHome
Добавлен в блок с серверами украинский сервер, т.к. он просто ближе.
server ntp.time.in.ua
server ntp2.time.in.ua
server ntp3.time.in.ua
кстати ntp.time.in.ua — основной сервер точного времени (stratum 1)!!!
В принципе больше ничего менять не надо, как говорят работать будет искаропки!)))
Перезапуск сервиса NTP
$ sudo /etc/init.d/ntp restart
$ sudo systemctl restart ntp
смотрим статус службы NTP
$ sudo systemctl status ntp
дополнительно
$ sudo ntpq -p
Наслаждаемся проделанной работой, и пробуем синхронизировать свой тазик с нашим сервером точного времени, например для ubuntu.
Синхронизация с сервером точного времени
$ sudo ntpdate 192.168.0.5
23 Nov 12:57:10 ntpdate[21927]: adjust time server 192.168.0.5 offset 0.153270 sec
где, 192.168.0.5 ип нашего сервера.
Если установлен ntpdate, то синхронизация происходит во время перезапуска службы, также в время рестарта системы. Иногда, нужно регулярно синхронизировать время в соответствии с NTP сервером Ubuntu. Часы системы могут значительно дрейфовать между перезагрузками и чем выше аптайм сервера, больше этот интервал расхождения. В этом случае, имеет смысл иногда поправлять время. Самый простой способ сделать это — заставить cron запускать его каждый день.