Arch Linux中禁用UTC解決雙系統時間問題


原因

Windows雙系統時間不統一在於時間表示有兩個標准:localtime 和 UTC(Coordinated Universal Time) 。UTC 是與時區無關的全球時間標准。盡管概念上有差別,UTC 和 GMT (格林威治時間) 是一樣的。localtime 標准則依賴於當前時區。

時間標准由操作系統設定,Windows 默認使用 localtime,Mac OS 默認使用 UTC 而 UNIX 系列的操作系統兩者都有。使用 Linux 時,最好將硬件時鍾設置為 UTC 標准,並在所有操作系統中使用。這樣 Linux 系統就可以自動調整夏令時設置,而如果使用 localtime 標准那么系統時間不會根據夏令時自動調整。

方法

通過如下命令可以檢查當前設置,systemd 默認硬件時鍾為協調世界時(UTC)

$ timedatectl status | grep local

硬件時間可以用 hwclock 命令設置,將硬件時間設置為 localtime(解決雙系統時間問題):

# timedatectl set-local-rtc true

硬件時間設置成 UTC(恢復默認設置):

# timedatectl set-local-rtc false

上述命令會自動生成/etc/adjtime,無需單獨設置。

Note: 如果不存在 /etc/adjtime,systemd 會假定硬件時間按 UTC 設置。

參考資料:https://wiki.archlinux.org/index.php/Time


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM