Библиотека сайта rus-linux.net
Синхронизация времени по NTP в Linux
Оригинал: 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 не устанавливается по умолчанию. Чтобы установить ее, выполните приведенную ниже команду.
$ sudo apt-get install ntpdate [В Debian/Ubuntu] $ sudo yum install ntpdate [В CentOS/RHEL] $ sudo dnf install ntpdate [В Fedora 22+]
Пример команды ntpdate:
$ sudo ntpdate 1.ro.pool.ntp.org
Чтобы просто запросить время сервера и не устанавливать часы, используя непривилегированный порт для отправки пакетов, чтобы обойти брандмауэры, выполните команду ntpdate со следующими флагами:
$ sudo ntpdate -qu 1.ro.pool.ntp.org
Всегда старайтесь запрашивать и синхронизировать время с ближайшими NTP-серверами, доступными для вашей зоны. Список пулов серверов NTP можно найти по следующему адресу:
В новых дистрибутивах Linux, которые используют Systemd, вы также можете синхронизировать время через файл timesyncd.conf. Просто откройте файл для редактирования.
$ sudo nano /etc/systemd/timesyncd.conf
И добавьте или раскомментируйте следующие строки после оператора [Time], как показано ниже:
[Time] NTP=0.ro.pool.ntp.org 1.ro.pool.ntp.org FallbackNTP=ntp.ubuntu.com 0.arch.pool.ntp.org
После редактирования файла введите команду timedatectl, чтобы активировать сборку клиента NTP в systemd.
$ sudo timedatectl set-ntp true $ timedatectl status
После этого введите команду date для отображения системных часов.