Centos7

巨大時間差異上的時間同步

  • December 24, 2021

您好,目前我有一個本地 ntp 伺服器(chrony)和一個 ntp 客戶端(chrony),所有這些都在工作,但是當我嘗試將 ntp 伺服器時間更改為從目前時間減去 6 年時。ntp 客戶端無法與之同步,它只會在 syslog 上顯示:

1 月 9 日 17:29:11 本地主機 chronyd

$$ 9192 $$: 系統時鐘錯誤 6780812.328260 秒,開始調整

ntp 客戶端(chrony)/etc/chrony.conf 是預設配置,除了伺服器指向我的本地 NTP 伺服器(chrony)。這是我的配置

# 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
server local.ntp.server iburst

# Ignore stratum in source selection.
stratumweight 0

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

# Enable kernel RTC synchronization.
rtcsync

# In first three updates step the system clock instead of slew
# if the adjustment is larger than 10 seconds.
makestep 10 3

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

# Listen for commands only on localhost.
bindcmdaddress 127.0.0.1
bindcmdaddress ::1

# Serve time even if not synchronized to any NTP server.
#local stratum 10

keyfile /etc/chrony.keys

# Specify the key used as password for chronyc.
commandkey 1

# Generate command key if missing.
generatecommandkey

# Disable logging of client accesses.
noclientlog

# Send a message to syslog if a clock adjustment is larger than 0.5 seconds.
logchange 0.5

logdir /var/log/chrony
#log measurements statistics tracking

我不知道它不會同步,我讀過它需要更長的時間,但我讓我的機器坐了 1 天,但 ntp 客戶端仍然沒有與 ntp 伺服器相同的時間(不同步) . 有任何想法嗎?我試著不重新啟動 chronyd 服務,讓它自動同步時間

請注意,“local.ntp.server”是在我的 /etc/hosts 上定義的。此外,NTP 伺服器和 NTP 客戶端沒有使用 ntpd 服務,但它使用的是 chronyd。這種設置是孤立的

你的問題似乎是你試圖通過扭曲時鐘來完成六年的時間變化,並在****一天后放棄。

如果偏斜算法使時鐘偏移多達 1%(這是相當多的),那麼時鐘偏斜需要六百年。即使時鐘完全靜止,也需要經過六年才能倒退六年。在不到六年的時間裡實現六年時間倒流的唯一方法是倒計時,我認為不會有任何反應。一天之內完成這意味著以比實時速度略多兩千倍的速度倒退時鐘!

我的感覺是,執行 NTP 伺服器是一個非常糟糕的主意,但如果你堅持這樣做,並且你突然將伺服器傾斜了相當大的數量,你將需要在客戶端時鐘有任何同步機會之前強行更改它們. 這最容易通過確保客戶端在啟動時從伺服器強制重置其時鐘(使用ntpd,這是ntpdate在啟動時完成的;我不知道 chrony)並重新啟動客戶端。

引用自:https://serverfault.com/questions/819467