先说两个概念吧:   
   UTC即Universal Time Coordinated,协调世界时    
  GMT即Greenwich  Mean Time,格林尼治平时    
在这里,你可以把UTC认为是GMT+0。   
Windows(XP和 VISTA)和(Linux/Unix/Mac)缺省看待系统硬件时间的方式是不一样的:   
  *  Windows把系统硬件时间当作本地时间(local time),即操作系统中显示的时间跟BIOS中显示的时间是一样的。    
  *   Linux/Unix/Mac把硬件时间当作UTC,操作系统中显示的时间是硬件时间经过换算得来的,比如说北京时间是GMT+8,则系统中显示时间是硬 件时间+8。   
这样,当PC中同时有多系统共存时,就出现了问题。假如你的Ubuntu和WindowsXP中设置的时区都为北京时间 东八区,而你在Ubuntu中把当前系统时间更改为9:00AM。则此时硬件中存储的实际是UTC时间1:00AM。这时你重启进入Windows后,你 会发现windows系统中显示的时间是1:AM,比Ubuntu中慢了八个小时。同理,你在Windows中更改或用网络同步了系统时间后,再到 Ubuntu中去看,系统就会快了8小时。在实行夏令时的地区,情况可能会更复杂些。
原因知道了,那怎么来解决这种冲突呢。一种就是 让Windows把硬件时间当作UTC,与Linux/Unix/Mac保持一致。另一种就是让Linux/Unix/Mac把系统时间当作本地时间,与 Windows保持一致。
1. 让Windows把硬件时间当作UTC    
开始 ->运行->CMD,打开命令行程序(Vista则要以管理员方式打开命令行程序方可有权限访问注册表),在命令行中输入下面命令并回车     
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation  /v RealTimeIsUniversal /t REG_DWORD /d 1   
2.  如何让Linux/Unix把硬件时间当作本地时间(以Ubuntu为例,其它Unix类系统与之类似)    
修改 /etc/default/rcS,    
将UTC=yes    
改为UTC=no   
3.  让Mac把硬件时间当作本地时间    
据说是有个时间补丁,自己到网上找找看吧。
引用自
http://conner-wang.spaces.live.com/Blog/cns!568D1F7F9D97C059!658.entry?wa=wsignin1.0&sa=946611942
沒有留言:
張貼留言