现在需要熟悉一下之前电脑装了Linux的Deepin系统,发现win与linux切换时时间总会发生错乱,win会比linux网络同步的正确时间早8个小时,每次都再同步更新就很麻烦,于是就搜索了一下解决方法,现在将较为可靠有效的简洁方法整理如下:
错乱原因:
Windows把系统硬件时间当作本地时间(local time),即操作系统中显示的时间跟BIOS中显示的时间是一样的。
Linux/Unix/Mac把硬件时间当作UTC,操作系统中显示的时间是硬件时间经过换算得来的,比如说北京时间是GMT+8,则系统中显示时间是硬件时间+8。而Windows显示的是硬件时间,所以两个时间会发生错乱。
解决方法:
1.修改Windows的时间设定
修改 Windows 对硬件时间的对待方式,这样只在 Windows 上修改后就无需在Deepin 上设置了。
让 Windows 把硬件时间当作 UTC
开 始->运行->CMD,打开命令行程序(以管理员方式打开命令行程序方可有权限访问注册表),在命令行中输入下面命令并回车
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1
2.修改Sabayon,将BIOS时间作为本地时间:
修改 /etc/conf.d/hwclock
将其中clock="UTC"改为clock="local"。
Sabayon使用gedit修改时提示出错,解决办法是 equo install vim,然后用vim来修改即可。
由于我采用的是第一种修改Windows的方法,在管理员权限下开启命令行输入命令后,提示操作命令成功,之后可以切换到Linux再切换到Windows下测验,时间一致。