最近, 我在电脑上装了双系统Windows xp和Redhat server 5.4(先装的Windows, 后装的Linux). 装完Linux后, 进入Windows发现, 系统时间慢了8小时. 经网上查资料得知:
Linux系统把计算机CMOS上的时间看作GMT(Greenwich Mean Time, 格林尼治标准时间), 再根据系统设置的时区确定最后的系统时间(如: CMOS上的时间为t1, Linux时区设置为GMT+08:00, 则linux的系统时间为t1+8小时).
Windows系统默认把CMOS上的时间看到Windows系统的本地时间(如: CMOS上的时间为t1, 无论Windows时区设置为什么, Windows的系统时间均为t1).
解决方法一: 修改Windows的注册表, 让Windows把CMOS上的时间看作GMT.
打开注册表(开始菜单 -> 运行 -> regedit), 在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation下新建类型为"DWORD值", 名称为"RealTimeIsUniversal"的项, 且数值数据为1. 重启电脑生效. 但有个bug: 当电脑从待机中醒来时, 系统时间又恢复到以前的时间(即CMOS时间, 如: 我的电脑慢了8小时), 我目前还没有找到解决此bug的方法.
解决方法二: 修改Linux系统, 让Linux系统把CMOS上的时间看作Linux的本地时间.
具体内容参见http://wenku.baidu.com/view/97d4d1c2aa00b52acfc7ca24.html
百度百科http://wenku.baidu.com/view/97d4d1c2aa00b52acfc7ca24.html