中古で入手したThinkpad X31は時刻が大幅にずれていたので、その修正の方法および調査結果をまとめる。
リアルタイムクロックとシステムクロックについて
linuxでは、リアルタイムクロック(RTC)とシステムクロックの2種類の時刻を扱っている。リアルタイムクロックは、ハードウェア的に時刻を計測しているもので、コンピュータの電源をシャットダウンしても付属の電池で計測している。一方、システムクロックはOSの起動時にRTCから時刻を取得して、その後はOSが計測・管理している時刻のこと。したがって、サーバなどのようにシャットダウンすることなしに長時間OSを稼働させる場合には、RTCから時刻がズレしてしまう。
今回のズレの原因
$ hwclockでRTCを確認してみると、RTC自体の時刻がズレていることが分かった。RTCを修正する方法はいくつかある。
ntpサーバを利用する方法: ntpdateというコマンドを使って、ntpサーバに接続してシステムクロックをntpサーバに同期させて、その後にRTCをシステムクロックに同期させる方法。何回か試してみたが、なぜかうまくntpサーバと同期できなかった。ネットで調べてみると、システムクロックが大幅にずれていた場合には同期できないなどという情報があった(真偽は不明)。したがって、この方法は断念した。
手動でシステムクロックを修正する方法: 例えば、以下のように手動でシステムクロックを設定する。
$ sudo date -s '2008-10-05 23:23:25'ちなみに、現在時刻は、情報通信機構のWebサイトなどで確認できる。
次に、ntpdateでntpサーバと同期する(上ではうまく出来なかったが、今回はできた)。
$ sudo ntpdate ntpサーバのURL
RTCをシステムクロックに同期させる。
$ sudo hwclock --systohc
0 コメント:
コメントを投稿