![FreeBSDとWindowsでは異なる時刻が表示される](https://rvso.com/image/23953/FreeBSD%E3%81%A8Windows%E3%81%A7%E3%81%AF%E7%95%B0%E3%81%AA%E3%82%8B%E6%99%82%E5%88%BB%E3%81%8C%E8%A1%A8%E7%A4%BA%E3%81%95%E3%82%8C%E3%82%8B.png)
デュアルブート システムでは通常 FreeBSD 9 を使用しますが、Windows 7 を起動すると、両方の OS のシステム時間が自動的に変更され、間違った時間が表示されます。何が問題で、どうすれば解決できますか?
答え1
一般的な BIOS PC には、タイムゾーンの表示なしで時間を保存するクロックがあります。オペレーティング システムによって規則が異なり、クロックに UTC を保存するものもあれば、クロックにローカル時間を保存するものもあります。異なる規則を必要とするシステム間でデュアル ブートを行うと問題が発生します。
以前のバージョンの Windows には、現地時間とは別の表示時間の概念がありませんでした。そのため、Windows で表示したい時間にハードウェア クロックを設定する必要があります。この問題が Windows 7 で修正されたかどうかはわかりません。
Unixシステムでは、ユーザーごとにタイムゾーンを設定でき、内部的にはUTCを使用します。ほとんどのUnix系ではUTCクロックを使用しますが、PC用に設計されたUnixでは、Windowsと共存する方法が提供されることがよくあります。FreeBSDでは、tzsetup
それからadjkerntz
この設定を更新します。ハードウェア クロックが UTC を使用しているか、ローカル時間を使用しているかがわかります。/etc/wall_cmos_clock
存在する場合、ハードウェア クロックはローカル時間を使用していると想定されます。
夏時間のあるタイムゾーンにお住まいで、ハードウェア クロックがローカル タイムを使用している場合、DST の開始時または終了時に複数のオペレーティング システムがクロックをリセットしようと競合する可能性があることに注意してください。これが、ハードウェア クロックを UTC に設定することが推奨される理由の 1 つです。ハードウェア クロックをローカル タイムに設定するのは、それが絶対に必要なオペレーティング システムを使用する場合のみにしてください。
答え2
私の経験からすると、あなたの問題は、1 つの OS がハードウェア クロックを UTC を使用していると認識し、もう 1 つの OS がそれをローカルであると認識しているように思われます。
BSDおよびWindowsのインストールがローカルタイムゾーンに設定されているかどうかを確認します。