私の家のコンピュータには2つのディスクがあり、1つはWindows 10がインストールされ、もう1つはCentOS 7.9がインストールされています。
Asrockマザーボードで、起動するディスクを選択できる起動GUIがあり、必要に応じてWindowsとLinuxを切り替えることができます。
CentOSを実行していて時間が正しい場合は、Windowsで再起動し、時間が+4時間速くなるのでUTC時間になります。 {私は米国北東部にあり、夏時間はUTCです - 4} Windowsで同期時間をクリックすると変更されますが、CentOS Linuxディスクを使用して毎回手動で実行する必要があります。
この問題をどのように解決できますか? WindowsとLinuxに表示される現地時間が正確であるように、この問題を解決するための最良の方法は何ですか? CentOSが私のBIOSクロックをUTC時間に設定したようです。
答え1
Windowsはデフォルトでハードウェアクロックを現地時間に保つことを好みますが、LinuxシステムはそれをUTCに保つことを好みます。時計をUTCに保つ方が良いです。これは、UTCを追跡しなくても夏時間の切り替えをより簡単にできるためです。どの今、ハードウェア時計は現地時間です。
幸い、WindowsもUTCで設定できるようです。これをHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal
制御するレジストリキーを1
。 (ない場合は最初に作成してください。64ビットシステムではQWORD、32ビットシステムではDWORDでなければなりません。)
これはテストされていませんが、いくつかの場所でお勧めします。
- Windows 10はUTCをBIOS時間としてサポートしますか?superuser.comから
- Gentoo Wiki:Windowsでのシステム時間/デュアルブート
- Arch Linux Wiki:Microsoft Windowsのシステム時間/ UTC
もちろん、別のオプションは、ハードウェアクロックが現地時間であると仮定するようにLinuxを設定することです。systemdの場合、使用されるコマンドは次のとおりです。timedatectl set-local-rtc 1
。しかし、systemdはそれがあまり好きではないことに注意してください。timedatectl
警告:
警告:システムは、ローカルタイムゾーンのRTC時間を読み取るように構成されています。このモードは完全にはサポートされていません。タイムゾーンの変更と夏時間の調整により、さまざまな問題が発生する可能性があります。 RTC時間は更新されず、保守のために外部機能に依存します。可能であれば、「timedatectl set-local-rtc 0」を呼び出してUTC形式のRTCを使用してください。
存在する場合、/etc/adjtime
設定は使用のためにその場所(3行目)に保存されます。hwclock
便利。ファイルがある場合、Systemdはファイルを更新しますが、ファイルがない場合は設定がどこに保存されるのかわかりません。
私はこれをテストしておらず、夏時間の問題についてはこれを避けようとするかもしれません。