Windows 7でも、時刻解釈をMac OS X/Linuxに合わせる

パソコン・インターネット

以前、Mac OS XとBoot CampのWindows XPを切り替えて使っていたとき、Mac OS XとWindows XPで、時計が9時間ずれるという現象に悩まされていました。

この原因は、Mac OS X/Linux/UNIXは、ハードウェアに設定された時刻をUTCと解釈するのに対し、Windows
XPではデフォルトでローカルタイムとして解釈するからでした。そのため、Mac OS XとWindows
XPを切り替えるたびに、時刻がずれます(日本の場合だと、9時間)。

この前MacBook Pro (Early 2011)にインストールしたWindows 7 Home Premium (64bit)でも、同じ現象が発生しました。

[amazonjs asin="B002NH4M34" locale="JP"]

普通は、Mac OS XもWindows 7も、NTPサーバに問い合わせて、自動的に時刻を合わせるようになっています。

Mac OS Xだと、システム環境設定の「日付と時刻」の「日付と時刻」タブで、、「日付と時刻を自動的に設定」にチェックが入っていればOKです。

Windows 7だと、コントロールパネルの「日付と時刻」の「インターネット時刻」タブで、「’…’と自動的に同期するように設定されています。」となっていれば大丈夫です。

起動時に、ネットワークにつながるように設定してあれば、自動的に時刻が調整されて、時計がずれていることに気がつかないかもしれません。でも、ネットワークにつながない状態だと、時計がずれている事に気づかされると思います。

さて、Windows XPで使った手法が、Windows 7でも使えるのでしょうか?

インストールしたWindows 7が実験環境であることを幸いとして、試してみました。その結果、同じ方法で解決できました。

解決策は、Windows 7でもハードウェアに設定された時刻をUTCとして解釈させるように、レジストリを書き換える事でした。

UbuntuTime – Community Ubuntu Documentation(英語)に答えがあります。ページの最後の"Multiple Boot Systems Time Conflicts"に、その設定方法が書かれています。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
     "RealTimeIsUniversal"=dword:00000001

上の内容を、WindowsTimeFixUTC.regと言う名前で保存します。拡張子に注意して下さい。上記ページに、作成済みのファイルがあるので、それを保存してもOKです。そのファイルをダブルクリックすると、確認のダイアログが開くので、「はい」で追加します。

作業をする前に、オリジナルのレジストリのバックアップを取っておいた方が良いと思います。

regeditを起動(スタートメニューの検索窓で、regeditを探してください)して、GUIで設定しても大丈夫でした。その場合、
regeditの左側の画面でTimeZoneInformationまで潜って行き、編集→新規→DWORD値で、名前に
RealTimeIsUniversalを、値に1を設定します。

これで、時刻がずれなくなりました。

本日、アクセス解析を見ていたら、「bootcamp windows7 時間 RealTimeIsUniversal」で検索してきている方がいらっしゃいました。

以前の記事にたどり着いていたようですが、無事解決できたでしょうか?

Posted by お市のかた