前一段時間剛裝了centos 5.4和win7的雙系統。發現win7的系統時間不對,機子沒上網,每天開機時,總會慢8小時,不知道怎麼回事,因為忙別的事情,所以過了那幾天才找原因,後來發現 windows time服務沒有自動,所以想當然認為是這個原因。
用了幾次也沒發現什麼異常,因為今天開機時候沒插網線,直接進了 ubuntu,發現時間快了8小時,插上網線就正常了,所以覺得不太正常,所以重啟進了win7,發現慢了8小時,這才意識到可能是兩個系統設置不同,導 致的這個時間問題。於是google:
兩個概念:
UTC即Universal Time Coordinated,協調世界時
GMT 即Greenwich Mean Time,格林尼治平時
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小時。 在實行 夏令時的地區,情況可能會更復雜些。
解決這個問題的方法:
1. 可讓 Ubuntu 不使用 UTC 時間與 Windows 保持一致。
ubuntu默認開啟UTC,即協調世界時,而win7是使用這種計時方式,這將導致的結果就是Windows和Ubuntu時間計算 有差異
你 可以使用以下方法得到一致的時間:
sudo gedit /etc/default/rcS
找到這一行:UTC=yes
把 yes改為no
在fedora(我是fedora 13)下,一次打開System–>Administration–>Date & Time在Time Zone選項卡下把System clock uses UTC前面的勾去掉,確定。稍微過幾分鐘系統時間就正常了。
2. 修改 Windows 對硬件時間的對待方式,這樣只在 Windows 上修改後就無需在Ubuntu 上設置了。
讓 Windows 把硬件時間當作 UTC
開 始->運行->CMD,打開命令行程序(Vista則要以管理員方式打開命令行程序方 可有權限訪問注冊表),在命令行中輸入下面命令並回車
代碼:
Reg add HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation /v RealTimeIsUniversal /t REG_DWORD /d 1