
我有一些 Linux 裝置(沒有 TOY 晶片,因此它們完全依賴 ntp),它們可能在沒有存取互聯網的情況下啟動(到交換器的連結已開啟)。該ntp
服務將啟動,但顯然不會聯繫任何對等方。然後我最終得到一個ntp
正在運行但未與任何對等點同步的服務(ntpq -p
給出 .INIT.
狀態)
問題是,當建立網路連線時,情況確實會改變。
如果連線在啟動時可用,則一切正常。同上,如果我手動發出 a service ntp restart
(ntp
連接到對等點並且時間正確同步)。
ntp 不應該嘗試定期重新連線嗎?
- 如果是:這是我需要配置的東西(我在配置中沒有看到任何內容)
- 如果沒有:處理服務重新啟動或服務啟動延遲的好方法是什麼(我可以假設與互聯網的連接將恢復)n啟動後分鐘)
註:看起來像從文件最大池時間(我理解是 ntp 在放棄之前嘗試連接到對等點的最大時間?)為 1024 秒 = 17 分鐘,這遠遠超過建立互聯網訪問所需的時間(大約 2 到 5 分鐘) , 最壞的情況下)
答案1
您可能已經被 ntpd 的邊緣情況所困擾:
IIRC ntpd 版本 < 4.2.4p3 從其同步清單中刪除了在某個時刻無法存取的所有伺服器。在這種情況下,這當然是非常糟糕的,因為 ntpd 很可能在獲得網路連線之前「耗盡」其對等點清單。
人們可以/可以dynamic
為這些伺服器設定選項來ntp.conf
解決此問題。
對於較新的版本,這不再是必要的(而且,動態選項在某個時候被淘汰,這給了一些 ntp 突然抱怨的人帶來了一些小抱怨)。
因此,您可以升級 ntpd,或設定該選項。
作為第三個選項,您可以在 init 系統中建立適當的依賴項;使 ntpd 依賴既定的網際網路聯繫 (不是只是網路)。結果是您也可以將其與其他服務一起重複使用。
答案2
如果出現介面,Debian OpenNTPD 打包會自動重新啟動它。這很常見。
也,在啟動 xntpd 之前,您(通常)需要一次性同步無論如何,所以我建議這是要走的路。