...
- Серверная служба NTP (представлена пакетами ntp и ntpdate). Может обеспечивать работу ОС в режиме как сервера точного, так и клиента.
- Клиентская служба timedatectl / systemd-timesyncd.servic. Не представлена отдельными пакетами, встроена непосредственно в ядро ОС.
Предназначена для использования только на клиентских ОС, и не может работать сервером точного времени.
Поддерживает только упрощенный протокол передачи времени, однако считается более современным вариантом для типичных клиентских применений.
...
Эта служба устанавливается и запускается автоматически при установке ОС, и, в общем случае, для использования в качестве клиентской службы, дополнительных настроек не требует.
Информация |
---|
Служба ntp не будет запускаться автоматически при перезагрузке компьютера, если она не сможет найти ни одного сервера времени из перечисленных в конфигурации. |
Для управления службой в состав дистрибутивов включен графический инструмент fly-admin-ntp, который можно установить из графического менеджера пакетов, или из командной строки:
...
Свой сервер времени
По умолчанию служба NTP ntpd настроена как клиентская.
Все подключения к ней запрещены в файле конфигурации:
...
Некоторые особенности синхронизации времени описаны в статье про виртуализацию
Служба TIMESYNCD
Служба timesyncd предлагается в качестве современной "легковесной" замены ntp.
Она более проста, интегрирована в ОС, но несколько ограничена в возможностях.
Служба не может выполнять функции сервера, и список серверов времени, с которыми будет выполняться синхронизация, жестко задан в исходном коде службы.
Служба timesyncd устанавливается автоматически при установке ОС , автоматически запускается при каждой перезагрузке ОС, однако немедленно завершает свою работу с сообщением об ошибке, обнаружив, что на компьютере присутствует служба ntp.
Для использования timesyncd в первую очередь необходимо полностью удалить службу ntp:
Command |
---|
sudo apt purge ntp |
Или, как вариант (чтобы сохранить настройки ntp), остановить, полностью отключить и полностью запретить службу ntp:
Command |
---|
sudo systemctl stop ntp sudo systemctl disable ntp sudo systemctl mask ntp |
После чего запустить службу timesyncd:
Command |
---|
sudo systemctl start systemd-timesyncd |
Состояние службы можно проверить командой:
Command |
---|
sudo systemctl status systemd-timesyncd |
Или командой:
Command |
---|
sudo timedatectl status |
Примерный вывод команды:
Информация |
---|
Local time: Ср 2018-12-26 11:08:12 MSK |
Настройка аппаратных ( RTC)часов
При использовании службы timesyncd рекомендуется настраивать аппаратные часы компьютера так, чтобы они показывали не локальное, а всемирное координированное время (UTC).
Если этого не сделать, возможны проблемы с коррекцией времени и сменой сезонного локального времени.
Если RTС настроены на локальное время, команда timedatectl status будет выдавать соответствующее предупреждение.
Переключение аппаратных часов на время UTC с одновременной их синхронизацией с системным временем выполняется командой:
Command |
---|
sudo timedatectl set-local-rtc 0 |
Для переключения с синхронизацией системного времени по показаниям часов RTC можно использовать опцию --adjust-system-clock.