Я установил стандартный CentOS7.3 и установил chrony
yum install -y chrony
systemctl start chronyd
systemctl enable chronyd
Если я запускаю CentOS, время не синхронизируется:
$ timedatectl
NTP enabled: yes
NTP synchronized: no
хрони работает, хотя
$ systemctl status chronyd
● chronyd.service - NTP client/server
Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2017-06-02 12:19:35 JST; 17min ago
Process: 631 ExecStartPost=/usr/libexec/chrony-helper update-daemon (code=exited, status=0/SUCCESS)
Process: 608 ExecStart=/usr/sbin/chronyd $OPTIONS (code=exited, status=0/SUCCESS)
Main PID: 620 (chronyd)
Memory: 1.2M
CGroup: /system.slice/chronyd.service
└─620 /usr/sbin/chronyd
Я должен сделать вручную sudo systemctl restart chronyd
чтобы исправить проблему синхронизации времени.
Это почему.
Вы также можете использовать timedatectl
для указания вашей ОС точно поддерживать правильное время, синхронизируя время с другим доверенным удаленным сервером «NTP». Это делается с помощью следующей команды:
timedatectl set-ntp yes
Мы можем просмотреть список доверенных серверов ntp, которые chronyd использует для синхронизации системного времени. Вы можете просмотреть этот список с помощью команды chronyc:
chronyc sources -v
Также проверьте системный файл, в котором обновлены серверы NTP.
cat /etc/chrony.conf
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
В качестве альтернативы вы также можете обновить сервер ntp с часовым поясом
timedatectl set-timezone Europe/London
NTP требует времени для синхронизации. Требуется пара точек данных, что занимает минуту или две.
Вы можете наблюдать за состоянием пиров с помощью таких команд, как chronyc sources
. Каждый сервер должен иметь недавно полученный пакет, столбец LastRx.
timedatectl определяет статус NTP через временную дисциплину ядра. Он вызывает adjtimex () и возвращает false в случае ошибки или STA_UNSYNC. См. Исходники systemd, time-util.c.