安装了win7和Crunchbang双系统以后,出现了时间显示问题,开始以为是linux那边的时区没有调节,但是调整后再次进入win7依然出现晚了8个小时。
在经过win7同步服务器时间以后,再次在系统之间切换一遍以后,依旧恢复原样。才觉得应该是双系统的问题。
在网络上一搜,原来是两个系统的计时方式不太一样。
1。win7并不是默认支持UTC时间,而是直接使用硬件时间也就是本地时间作为系统时间显示,而linux是支持的而且按照UTC来换算的,这样问题就来了,linux每次的关机硬件和系统的时钟会进行同步,由于linux使用了UTC时间,咱们是东八区那么就是本地时间(硬件时间)加上8小时成为UTC。这时硬件的真实时间就退后了因为这样才能。而当切换到win7的时候,系统直接读取硬件时间(已经退后了8小时)。结果就是win7慢了8个小时。
2。解决方法,最好把win7更改为支持UTC。当然也可以改linux。这里介绍第一种改win7.
a)把下面的内容存到txt文件中,保存后把文件名和后缀改为utc.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation] “RealTimeIsUniversal”=dword:00000001
然后双击运行utc.reg,重启完成。
b)或者也可以直接新建一个注册表的值
启动注册表 (regedit)
找到下面的路径
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation
建立一个 dword 值名称改为 RealTimeIsUniversal 并且把值改为1.(64位的也可以新建deword(32))
重启完成。
参考文章:http://crashmag.net/configuring-windows-7-support-for-utc-bios-time