ESXI6 0 時間(時區)顯示不一致

2021-09-07 18:41:50 字數 1766 閱讀 5094

** 

近日由於設定esxi計畫任務,無意間發現了esxi伺服器客服端時間和系統顯示時間不一致的情況,導致了(我為了一致,通過ssh用命令修改了esxi系統時間)虛擬機器時間也不一致,最終導致虛擬伺服器系統時間出錯。

相差大約八小時,可以通過客戶端顯示的時間cst,而ssh伺服器用命令顯示為utc時間。於是我檢視了所有的esxi伺服器,發現都是一樣的情況,因為平時不在意(沒有關注這裡的時間)沒有關注這一點,你會發現你的esxi也是這樣的。當時我想到用命令(esxcli system time set)改為一樣不就行了,可以事與願違,改了後導致虛擬伺服器時間也跟著變,導致系統錯誤。

最後查了下資料發現esxi預設都是utc時間,並且無法更改,更坑的是官方也是這樣說的,只有4.x下的版本的破解辦法,4.x以後官方也無解法。

於是自己搗鼓了下,發現esxi上/etc下有個localtime ,於是聯想到了linux下的localtime,能否先設定好,再進行替換,於是進行了嘗試:

先把linux伺服器時間設定好,再把localtime複製並上傳到esxi伺服器上,一定要上傳到資料儲存目錄,其它目錄esxi重啟系統都會還原,檔案也會丟失。這裡目錄為:/vmfs/volumes/esxi26199

然後使用複製命令,覆蓋掉/etc下的localtime檔案,cp /vmfs/volumes/esxi26199/localtime  /etc/localtime。

然後date你會發現奇蹟出現了:

時間變為了cst了,而且你用客戶端登陸發現時間也是正常的,沒有再變了,檢視虛擬機器時間也是正常的。

但是重啟esxi後你會發現你所作的操作都是無用的,一切回到從前……

接著說解法吧:

剛剛為什麼要把localtime檔案拷到資料儲存目錄下也是有原因的,為了我們能重複使用。

新增一條命令在此檔案中即可:cp /vmfs/volumes/esxi26199/localtime  /etc/localtime

這樣即使esxi主機重啟後,時間也會正確的了(可能會有幾秒延時)。

經過測試,c6和c7下的localtime都可以作為原檔案進行替換。

docker 解決容器時區時間不一致問題

專案部署上線後發現時間不一致,相差時間8個小時,原因是docker容器系統預設時間與中國的時間不一致 修改docker compose.yml檔案新增environment引數 environment tz asia shanghai完整 version 3 services container n...

docker 系統時區與jvm時區不一致

linux centos 7.5 docker 18.06 最近做了乙個功能,要求資料庫中的時間和系統時間存在很小誤差才能使用,部署上伺服器時出現了很大時差,計算下來剛好8個小時,然後去看log發現log4j打出來的時間不是東八區。修改系統時區,執行 cp usr share zoneinfo as...

linux時間與Windows時間不一致的解決

一 首先要弄清幾個概念 1.系統時間 與 硬體時間 12 01 19 07 date 2009年 12月 07日 星期一 14 22 20cst 12 0119 07 date u 2009年 12月 07日 星期一 06 22 22utc 2.硬體時間 sbin hwclock 直接呼叫 sbin...