在使用双系统的过程中,博主遇到了遇见了意见令人头疼的事:每次打开Windows或者Linux时间都是错误的!而且细心的博主还发现,每次的时间差都是8小时作为一个强迫症,博主表示不能忍。那么,就让我们来解决这个问题吧
Why?
经过一番谷歌,我很快找到了原因:
Windows 与 Mac/Linux 缺省看待系统硬件时间的方式是不一样的:
Windows把系统硬件时间当作本地时间(local time),即操作系统中显示的时间跟BIOS中显示的时间是一样的。 Linux/Unix/Mac把硬件时间当作UTC,操作系统中显示的时间是硬件时间经过换算得来的,比如说北京时间是GMT+8,则系统中显示时间是硬件时间+8。
这样,当PC中同时有多系统共存时,就出现了问题。
假如你的linux设置的时区都为北京时间东八区,当前系统时间为9:00AM。则此时硬件中存储的实际是UTC时间1:00AM。这时你重启进入Windows后,你会发现windows系统中显示的时间是 1:00AM,比linux中慢了八个小时。同理,你在Windows中更改或用网络同步了系统时间后,再到linux中去看,系统就会快了8小时。 在实行夏令时的地区,情况可能会更复杂些。
How to slove it?
解决方案有两种:一种是对Windows下手,另一种则是对Linux下手。
Windows解决方案
Win+R
进入cmd
,在命令行中输入下面命令并回车
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1
Linux解决方案
打开terminal
,编辑/etc/default/rcS
文件
sudo vi /etc/default/rcS
找到这一行
UTC=yes
把yes
改为no
,保存并退出
如果说找不到UTC = yes 直接在terminal
运行(本人亲测Ubuntu16.04)
sudo timedatectl set-local-rtc 1
网友评论