Chrony 客戶端不更改系統和硬體日期
語境
- 700
- chronyd (chrony) 版本 3.1
問題
我遇到了
chonyd
伺服器日期的問題。首先,將目前日期更改為舊日期
我將硬體時鐘日期從目前的實際日期
mar. nov. 27 15:57:12 CET 2018
更改為mer. déc. 12 12:12:12 CET 2012
使用以下命令:hwclock --set --date="12/12/2012 12:12:12" hwclock -s
然後,啟動 chronyd 服務來獲取真正的好日期
我使用 啟動 chronyd 服務
systemctl start chronyd
,並使用 檢查狀態systemctl status chronyd
,這是顯示chronyd
服務執行正常的輸出:● chronyd.service - NTP client/server Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled) Active: active (running) since mer. 2012-12-12 12:20:14 CET; 27min ago ... déc. 12 12:20:17 pad chronyd[1808]: Selected source 178.32.220.7 déc. 12 12:20:17 pad chronyd[1808]: System clock wrong by 188017778.899985 seconds, adjustment started déc. 12 12:25:37 pad chronyd[1808]: Selected source 62.210.211.218
這是
/etc/chrony.conf
配置文件:# Record the rate at which the system clock gains/losses time. driftfile /var/lib/chrony/drift # Enable kernel synchronization of the real-time clock (RTC). rtcsync # Enable hardware timestamping on all interfaces that support it. hwtimestamp * # Specify directory for log files. logdir /var/log/chrony server 0.fr.pool.ntp.org minpoll 0 maxpoll 0 server 1.fr.pool.ntp.org minpoll 0 maxpoll 0 server 2.fr.pool.ntp.org minpoll 0 maxpoll 0 server 3.fr.pool.ntp.org minpoll 0 maxpoll 0
這是啟動
chronyc sources
後的輸出chronyd
:^+ obelix.fraho.eu 2 0 377 0 -876us[ -876us] +/- 12ms ^- bb8.dousse.eu 2 7 377 40 -1547us[-1547us] +/- 52ms ^- cdg1.m-d.net 2 6 377 39 -806us[ -806us] +/- 33ms ^* cluster004.linocomm.net 2 7 377 100 +330us[ +384us] +/- 7957us
輸出表明伺服器已連接,顯示ntp 主機伺服器的
^+
字元。obelix.fraho.eu
最後,我等待 chronyd 守護程序更新日期並顯示日期
60 多分鐘後,我
date
在終端中執行命令並得到以下輸出:mer. déc. 12 13:15:04 CET 2012
chronyd 尚未更新日期…
文件夾
/var/log/chronyd/
為空任何的想法 ?
引用官方FAQ,
chronyd
只會逐漸調整時鐘:預設情況下,chronyd 通過減慢或加快時鐘逐漸調整時鐘。如果時鐘距離真實時間太遠,糾正錯誤需要很長時間。chronyc 的跟踪命令列印的系統時間值是需要應用於系統時鐘的剩餘校正。
如此處所述,您可能能夠通過觀察輸出的線路來驗證您的時鐘是否確實在調整(有關詳細資訊,請參閱中的部分)。
System time``chronyc tracking``tracking``man chronyc
為了
chronyd
能夠步時鐘,您必須在以下位置添加makestep
指令chrony.conf
:# Step the clock on the first three updates # if its offset is larger than one second makestep 1 3
有時 - 例如在可以暫停和恢復的虛擬機上 - 您可能希望讓
chronyd
任何更新的時鐘,而不僅僅是啟動後的第一個:# Step the clock on any update # if its offset is larger than one second makestep 1 -1
但請記住官方文件中的警告(再次來自
man chronyc
):$$ … $$時間的任何跳躍都可能對某些應用程序產生不利影響。