回答:
Windowsでは、システムRTCクロックは伝統的に現地時間で保持されます。UnixおよびLinuxでは、伝統的にUTCで保持され/etc/localtime
、現在のタイムゾーンを示すために使用され、表示される時間が正確になります。
RTCは1つしかないため、これら2つのワールドビューはデュアルブート構成で衝突します。通常、LinuxにRTCが現地時間であると仮定するように指示します(Windowsに通知できないため)。これは、1つのLinuxから別のものに変化するが、ミントは、おそらく設定することができますUbuntuのようなものですので、UTC=no
中に/etc/default/rcS
。その後、Windowsで時計を現地時間に設定できます。その後、Linuxはそのままにします。
編集者注:
そのファイルはLinux Mint 19以降(より正確にはUbuntu 18.04ベース以降)には存在しません:
/etc/default/rcS
Mint 18.2 KDEは、他の修正(検索で見つかった追加の修正を含む)の影響を受けないようです。少なくとも現在のKDEバージョンでは、aecolleyとerror404の回答に記載されているファイルは存在しないか、設定が参照されている場所ではないようです。Julie Pelletierの回答のコマンドは18.2シナモンで機能しましたが、18.2 KDEでは機能しませんでした。
半ダースの提案された解決策を試した後、以下は18.2 KDE用に修正しました。正しい時間を表示して、次の端末コマンドを実行します。
timedatectl set-local-rtc 1 --adjust-system-clock
出典:インストール後のLinux Mintのヒントとコツ[Mint 18-Cinnamon Edition]
これはCinnamonの代替ソリューションとしても機能するはずであり、他のDEも同様に想定しています。
編集者のメモ:
sudo
必須ではありません。そのコマンドをユーザーとして実行してください。
再起動しても持続し、永続的であるはずです。
Ubuntu 18.04ベースのLinux Mint 19.1 Cinnamonでテスト済み。
最も一般的な方法は次のとおりです。
hwclock --systohc --localtime
これは再起動後も持続し、ほとんどのシステムで機能します。
hwclock --systohc --localtime
にです。これにより、システムによって現在表示されている値を使用してハードウェアクロックがローカル時刻に設定されます。ただし、現在クロックが正しくない場合(つまり、ハードウェアクロックは現地時間ですが、システムがタイムゾーンのオフセットを追加するため、表示される値が正しくない場合)が必要hwclock --hctosys --localtime
です。
警告
この方法は、Windowsの7以前のバージョンではバグがありますが、Linux側ではなくWindows側の問題を解決します。localtimeを使用するようにLinuxを設定する必要はありません。
最も輝かしく尊敬されているArch Linux Wikiからの抜粋:
ユーザーがローカル時間でRTCを設定する理由の1つは、ローカル時間を使用するWindowsとのデュアルブートです。
ただし、Windowsは[RTCをUTCで処理できる]簡単なレジストリを修正します。Linuxで現地時間を使用するのではなく、UTCを使用するようにWindowsを構成することをお勧めします。
を使用して、レジストリに16進値の値を
regedit
追加します。DWORD
1
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\RealTimeIsUniversal
これは、次を実行している管理者コマンドプロンプトから実行できます。
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
または、次のコンテンツを含む* .regファイルを(デスクトップ上に)作成し、ダブルクリックしてレジストリにインポートします。
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation] "RealTimeIsUniversal"=dword:00000001
上記の効果がないようで、64ビット版のWindowsが使用されている
QWORD
場合、値の代わりに値を使用DWORD
すると問題が解決する場合があります。
WindowsがDSTの変更のためにクロックの更新を要求した場合、それを許可します。時計は予想どおりUTCのままになり、表示された時刻のみが修正されます。
この値を設定した後、ハードウェアクロックとシステムクロック時間を更新する必要がある場合があります。時間のオフセットに問題がある場合は、tzdataを再インストールしてから、タイムゾーンを再度設定してください。# timedatectl set-timezone America/Los_Angeles
現地時間に一致するこれら2つのコマンドのいずれかを実行します
timedatectl set-local-rtc 1 --adjust-system-clock
「または」
timedatectl set-local-rtc 0 --adjust-system-clock