時刻調整

最終更新日時:2007-03-13 16:13:13
自宅サーバへの道

Linux ではカーネルで時計を持っていてそれを使っているわけですが、この時計はそれほど高精度ではありません。
つまり、時間が経つにつれて徐々に時刻がずれていきます(経験上1日5秒くらい)。
また、PC自体も内部で時計を持っていますが、これも放っておくとずれていくことが知られています。
他のマシンとの通信することが無ければ特に問題ないかもしれませんが、例えばメールを送信するのであれば問題になるかもしれません。
よくありがちなのは「未来からのメール」でしょうか(^_^;
時刻の設定が正しくないために、未来のタイムスタンプが押されたメールが来たりするわけです。
あとは、各種ログの時間が正確でないとか、定時で実行したい処理の時間がずれるとか、細かいながらも様々な問題を引き起こす可能性があります。

設定


以下、時刻調整についての設定です。

dateによる確認、設定


まずは、現在設定されている時刻を確認します。

 % date


ここで表示された時刻が大幅に(例えば1時間とか)ずれている場合には、まずはだいたいの時刻に設定してしまった方がよいので、以下のように時刻を設定します。

 % su -
 # date 03101234


上記の例では、3/10 12:34 に設定されます。

NTP


ある程度正しい時刻に設定できたら、今後はNTPを使用して自動的に時刻を調整するようにします。
これにはntpdを使用します。
ntpdを稼働させて適当なタイムサーバと同期するよう設定します。
また、このままだとLinuxの時刻とPCの時刻がどんどんずれていってしまってOS再起動時にまた時計がずれてしまうので、1日1回程度PCの時計をLinuxの時計に同期させます。
さらに、自宅サーバ内で稼働しているntpdをタイムサーバとして、クライアントPC(Winodws等)の時刻を自動的に調整するようにも設定できます。
詳細についてはNTPのメモを参照してください。

※ntpdを稼働させるのが面倒で、それほど精度を気にしないという場合にはntpdateによる時刻調整でもよいかと思います。



お問い合わせは 掲示板 にて。