0%

Ubuntu-20.04 與Windows 10 系統時間同步

安裝Ubuntu-20.04 時,已經有設定系統的時區,這時候Ubuntu 的系統時候是正確的;
但切換到Windows 10,會發現系統時間少了8小時。

概念

UTC時間,即Universal Time Coordinated,稱為世界協調時間
GMT時間,即Greenwich Mean Time,稱為格林威治平均時間

Windows 與Unix/Linux 看待系統硬體時間的方式是不同的:

  • Windows 10 的系統時間會將BIOS的時間設為本地時間,所以Winodws系統的時間會跟BIOS同步
  • Unix/Linux/Mac OS 會將BIOS的時間當作UTC時間,因此系統啟動後會在BIOS 時間再加上時區時間

基於以上第二點,當你在Unix/Linux/Mac OS 的系統中,將系統的時候設置正解後,其實是在BIOS 時間減掉時區時間。

例如:
Asia/Taipei 的時區是+08:00 ,所以設定好Unix/Linux/Mac OS 的時間後,會在BIOS 時間減去八小時,
所以切換成Windows 10 系統後,會發現時間慢了八小時。

作法

  1. 讓Ubuntu-20.04 自動向NTP Server(Network Time Protocol) 取得正確的時間
1
2
sudo apt-get install ntpdate
sudo ntpdate time.windows.com
  1. 讓Ubuntu-20.04 將正確的時間寫到Hardware Clock,讓Windows 10 可以從Hardware Clock 讀到正確的時間。
1
sudo hwclock --localtime --systohc

再重啟進到Winodws 10,會看到時間是正確的。