linux本地时间与utc不一致_Linux Windows 双系统时间不一致
大家在裝完 Linux 系統后,可能會出現 Linux Windows 兩個系統的時間不一致,一般是相差 8 小時。下面就來分析該問題,并給出解決辦法。
原因分析
GMT:Greenwich Mean Time,即格林尼治標準時間,也就是世界時。GMT 以地球自轉為基礎的時間計量系統,但由于地球自轉不均勻,導致 GMT 不精確,現在已經不再作為世界標準時間使用。
UTC:Universal Time Coordinated,即協調世界時。UTC 是以原子時秒長為基礎,在時刻上盡量接近于 GMT 的一種時間計量系統。為確保 UTC 與 GMT 相差不會超過 0.9 秒,在有需要的情況下會在 UTC 內加上正或負閏秒。UTC 現在作為世界標準時間使用。
RTC:Real-Time Clock,即實時時鐘,在計算機領域作為硬件時鐘的簡稱。
世界上不同地區所在的時區是不同的,這些時區決定了當地的本地時間。比如北京處于東八區,即北京時間為 UTC + 8,如果 UTC 時間現在是上午 6 點整,那么北京時間為 14 點整。
Windows 與 Linux 看待硬件時間的方式不同。Windows 把電腦的硬件時鐘(RTC)看成是本地時間,即 RTC = Local Time,Windows 會直接顯示硬件時間;而 Linux 則是把電腦的硬件時鐘看成 UTC 時間,即 RTC = UTC,那么 Linux 顯示的時間就是硬件時間加上時區。
解決辦法
既然知道了問題原因,我們就知道如何去解決,大概思路分為兩種,一是讓 Windows 認為硬件時鐘是 UTC 時間,二是讓 Linux 認為硬件時鐘是本地時間。
修改 Windows 硬件時鐘為 UTC 時間
以管理員身份打開 「PowerShell」,輸入以下命令:
> Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1
或者打開「注冊表編輯器」,定位到 計算機\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation 目錄下,新建一個 DWORD 類型,名稱為 RealTimeIsUniversal 的鍵,并修改鍵值為 1 即可。
修改 Linux 硬件時鐘為本地時間
這里大家可以根據自己 Linux 發行版的方法來修改。我這里給出現在大多數發行版由 timedatectl 來管理時間的修改方法。
在終端中,輸入以下命令:
$ timedatectl set-local-rtc 1 --adjust-system-clock
現在,系統時間顯示正常了。
這兩種方法中,本人推薦第一種方法,修改 Windows 的時間管理。因為在 Linux 系統中修改后,輸入 timedatectl 命令后,會出現警告,提示你使用 RTC 時鐘會導致一些程序錯誤;并且 Windows 也在更改時間管理方式為 UTC 時間。
總結
以上是生活随笔為你收集整理的linux本地时间与utc不一致_Linux Windows 双系统时间不一致的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 论坛模板_python模板
- 下一篇: linux 其他常用命令