Назад | Перейти на главную страницу

Принудительная проверка времени хронирования

Контекст:


Проблема

я бы хотел найти способ заставить chronyd мгновенно изменить аппаратные часы без ожидания.

Программа chronyd в настоящее время работает на моей машине:

[root@localhost ~]# ps -ef | grep chronyd
   chrony     599     1  0 21:59 ?        00:00:00 /usr/sbin/chronyd
   root      6710  4779  0 22:31 pts/0    00:00:00 grep --color=auto chron

chronyd на самом деле настроен таким образом в файле /etc/chrony.conf :

   # Record the rate at which the system clock gains/losses time.
   driftfile /var/lib/chrony/drift

   # Allow the system clock to be stepped in the first three updates
   # if its offset is larger than 1 second.
   makestep 1.0 3

   # Enable kernel synchronization of the real-time clock (RTC).
   rtcsync

   # Enable hardware timestamping on all interfaces that support it.
   hwtimestamp *

   # Increase the minimum number of selectable sources required to adjust
   # the system clock.
   #minsources 2

   # Allow NTP client access from local network.
   allow 192.168.0.0/16

   # Ignore stratum in source selection.
   stratumweight 0

   # Specify directory for log files.
   logdir /var/log/chrony

   # Select which information is logged.
   #log measurements statistics tracking
   pool chronos.univ-brest.fr

Хост NTP, который запрашивает машина в настоящее время, chronos.univ-brest.fr и машина может его пропинговать:

 [root@localhost ~]# ping chronos.univ-brest.fr
   PING chronos.univ-brest.fr (195.83.247.18) 56(84) bytes of data.
   64 bytes from chronos.univ-brest.fr (195.83.247.18): icmp_seq=1 ttl=239 time=38.3 ms
   64 bytes from chronos.univ-brest.fr (195.83.247.18): icmp_seq=2 ttl=239 time=38.7 ms

Единственный похожий пост, который я нашел, не решает мою проблему https://stackoverflow.com/questions/49730407/how-to-resynchronize-with-chrony


Текущая дата на машине следующая:

[root@localhost ~]# date
   jeu. févr.  2 22:40:21 CET 1978

Я хотел бы найти способ заставить chronyd чтобы мгновенно изменить аппаратные часы на дату, указанную хостом NTP.

Если chronyd еще не запущен, команда, похожая на ntpdate pool.ntp.org, может быть (начиная с версии 1.30):

chronyd -q 'server pool.ntp.org iburst'

Если он уже запущен и для него настроено несколько серверов, эквивалент будет:

chronyc -a 'burst 4/4'

Если вы хотите, чтобы chronyd также шагал по часам вместо поворота, если есть большее смещение, а chrony.conf не включает неограниченную директиву maketep, вам также нужно подождать, пока будут выполнены новые измерения, а затем сказать chronyd, чтобы шаг:

sleep 10
chronyc -a makestep