Windowsの時刻解釈をMac OS X/Linuxに合わせる[追記あり]

2017年5月15日パソコン・インターネット

iMacでBoot Campを使って、Windows XPを使っています。ちょっと困っていたのが、Windows XPに切り替えて、その後Mac OS Xに戻ると、時間がずれていると言う事です。Mac OS Xのシステム環境設定の日付と時刻で、「日付と時刻を自動的に修正」にチェックを入れていても、管理者権限の無いアカウントでログインした場合は、時刻の自動補正がされ無いと言う問題があります。

ついに、その解決方法がわかりました。

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

解決策は、Windows XPでもハードウェアに設定された時刻を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と言う名前で保存します(追記 2008-5-8 23:57 拡張子に注意)。上記ページに、作成済みのファイルがあるので、それを保存してもOKです。そのファイルをダブルクリックすると、確認のダイアログが開くので、「はい」で追加します。

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

regeditを起動(スタート→ファイル名を指定して実行で、regeditと入力)して、GUIで設定しても大丈夫でした。その場合、regeditの左側の画面でTimeZoneInformationまで潜って行き、編集→新規→DWORD値で、名前にRealTimeIsUniversalを、値に1を設定します。

これで、時刻がずれなくなりました。Mac OS XとWindows XPのデュアルブートではなく、LinuxとWindows XPのデュアルブートを設定している方にも有効なテクニックです。

上記以外で参考にしたページは、次の所です。

(追記 2008-5-8 23:57)
レジストリエディタの画面コピーを貼り付けるのを忘れていました。クリックすると拡大します。

レジストリエディタの画面

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

(追記 2011-05-10 23:57)

Windows 7でも有効でした。

Posted by お市のかた