這個問題的原因是:Win和 Linux 對硬件時間的處理方法不同,目前Windows在使用localtime(本地時間),Linux使用UTC(是一種世界標准時間)。
UTC加減時區之后才是localtime。所以切換兩個系統會出現相差8小時的問題。因此在中國UTC+8時區的情況下使用 Windows 和 Linux 會有八個小時的差異。
想要將兩個時間統一最好的辦法就是統一對硬件時間的處理辦法。
通過timedatectl set-local-rtc命令可以硬件處理的辦法設置為本地時間或UTC時間
timedatectl set-local-rtc 1 --adjust-system-clock # 讓Linux使用localtime
sudo timedatectl # 驗證時間
兩個命令是設置是否將硬件時間設置為本地時間。
使用
sudo hwclock -w
更新硬件時間
sudo hwclock可以查看硬件時間,timedatectl可以查看本地時間、UTC時間、時區、是否開啟時間同步等信息。如果經過設置之后時間不正確了,可以通過以下命令開啟同步。
sudo systemctl restart systemd-timesyncd.service #開啟時間同步服務
sudo timedatectl set-ntp true #開啟同步
sudo hwclock -w #更新硬件時間