systemd-timesyncd (Русский)

From ArchWiki
Revision as of 19:39, 14 November 2015 by Masterslave (talk | contribs) (sync)
Jump to navigation Jump to search

zh-CN:Systemd-timesyncd

Tango-preferences-desktop-locale.pngЭта страница нуждается в сопроводителеTango-preferences-desktop-locale.png

Статья не гарантирует актуальность информации. Помогите русскоязычному сообществу поддержкой подобных страниц. См. Команда переводчиков ArchWiki

systemd-timesyncd это служба, которая была добавлена для синхронизации системных часов по сети. Эта служба по сути реализует упрощенный клиент SNTP. В отличие сложных реализаций NTP, systemd-timesyncd представляет только клиентскую часть, ориентируясь на запрос времени из одного удаленного сервера и синхронизации локальных часов с ним. Подробнее смотрите список рассылки systemd (англ.)

Установка

Служба systemd-timesyncd доступна с systemd >= 213. Для ее активации и запуска выполните:

# timedatectl set-ntp true 

Чтобы узнать текущее состояние службы, выполните timedatectl status:

$ timedatectl status
      Local time: Sat 2015-11-14 22:20:38 MSK
  Universal time: Sat 2015-11-14 19:20:38 UTC
        RTC time: Sat 2015-11-14 19:20:38
       Time zone: Europe/Minsk (MSK, +0300)
 Network time on: yes
NTP synchronized: yes
 RTC in local TZ: no
Совет: До systemd 216 systemd-timesyncd требуется запущенный systemd-networkd (без дополнительной настройки) для уведомлений о статусе сетевых событий (up/down). Хоть он теперь получает события из dhcpcd и NetworkManager, но все еще может потребоваться как зависимость от конфигурации сети или используемого инструмента управления сетью.

Настройка

При запуске systemd-timesyncd будет читать файл конфигурации /etc/systemd/timesyncd.conf, который для systemd 217 выглядит так:

/etc/systemd/timesyncd.conf
[Time]
#NTP=
#FallbackNTP=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org

Чтобы добавить сервера времени или изменить предложенные, необходимо раскомментировать соответствующую строку со списком их имен хостов или IP, разделяемых пробелами. Например, вы можете использовать любые серверы, предоставляемые NTP pool project или использовать стандартные для Arch (также предусмотренные NTP pool project):

/etc/systemd/timesyncd.conf
[Time]
NTP=0.arch.pool.ntp.org 1.arch.pool.ntp.org 2.arch.pool.ntp.org 3.arch.pool.ntp.org
FallbackNTP=0.pool.ntp.org 1.pool.ntp.org 0.fr.pool.ntp.org

Также NTP сервера могут быть предусмотрены в systemd-networkd конфигурации с опцией NTP= или динамически через DHCP сервер (с systemd 216).

Используемый сервер NTP будет определяться по следующим правилам:

  • Приоритетно - с любого интерфейса NTP серверов, полученных из конфигурации systemd-networkd.service(8) или через DHCP.
  • Сервера NTP, указанные в /etc/systemd-timesyncd.conf будут добавлены в список интерфейса после получения ответа от серверов в процессе соединения с ними.
  • Если после выполнения действий выше информация о серверах NTP не будет получена, то будет использоваться имя хоста и IP адреса, указанные в FallbackNTP=.
Важно: При каждой синхронизации служба перезаписывает файл /var/lib/systemd/clock, путь к которому на данный момент захардкоден и не может быть изменен. В связи с этим могут возникнуть проблемы, если корневой раздел работает в режиме "только для чтения" или при попытки минимизации операций записи.

Смотрите также