Ubuntu 與 Windows 雙系統時間不一致問題解決方案 #
前言 #
使用 Ubuntu + Windows 雙系統的用戶,常會遇到一個困擾:
在 UTC+8 的地區,Ubuntu 的時間總是比 Windows 快 8 小時。每次切換系統後,都要手動調整時間,十分麻煩。
問題原因 #
Ubuntu 與 Windows 對於 硬體時間(BIOS 時間) 的解讀方式不同:
-
Windows:直接將 BIOS 時間視為 本地時間 (Local Time)。
-
Ubuntu:則將 BIOS 時間視為 UTC+0,再加上系統時區 (例如 UTC+8),因此會比 Windows 顯示快 8 小時。
所以切換系統時,就會出現時間不同步的問題。
解決方法:使用 Chrony 同步時間 #
在 Ubuntu 20.04 之後,官方推薦使用 Chrony 取代舊的 ntpdate
。
安裝 Chrony #
sudo apt update
sudo apt install chrony
立即同步時間 #
sudo chronyd -q 'server pool.ntp.org iburst'
這會向全球的 NTP 伺服器請求正確時間,並立即校準。
如果希望 Ubuntu 也和 Windows 一樣,直接將 BIOS 設為「本地時間」,可以執行:
timedatectl set-local-rtc 1 --adjust-system-clock
這樣 Ubuntu 會把 BIOS 當成本地時間解讀,Windows 和 Ubuntu 就不會再有 8 小時的落差。