Linux
NTP 返回未來時間
我注意到我正在維護的 Linux 伺服器上的時間設置為未來 8 小時。
我覺得這很奇怪,所以我檢查
ntpd
了它,它是。我覺得這更奇怪,所以我檢查了時區,
$ ls -lah /etc/localtime /etc/localtime -> /usr/share/zoneinfo/Australia/Brisbane
嗯……
$ ntpdate -q 0.au.pool.ntp.org server 119.148.81.6, stratum 2, offset -28768.189322, delay 0.06355 server 203.161.129.2, stratum 3, offset -28768.185683, delay 0.03165 server 202.158.218.239, stratum 3, offset -28768.187015, delay 0.04909 8 Sep 19:49:49 ntpdate[16434]: step time server 119.148.81.6 offset -28768.189322 sec
呃……完全錯誤。
ntpd
我認為如果伺服器時間與本地時間相差太大,可能會有某種問題無法真正更新伺服器時間,所以我手動設置了它:$ date 090811492010 Wed Sep 8 11:45:00 EST 2010
然後又跑過去
date
看看發生了什麼:$ date Wed Sep 8 11:44:47 EST 2010
倒退了13秒!我認為
ntpd
已經成功執行並調整了伺服器時間,13 秒不正確。但是,隨後檢查日期
ntpdate -q
仍然表示19:49
正確的時間,因此ntpd
將時間重置為19:49
在片刻之內..有誰知道我做錯了什麼?
這是專用的虛擬伺服器,還是虛擬化的?一些虛擬化軟體可能在主機和客戶作業系統上的時鐘之間存在不同步。