PCには時計が内蔵されていて、現在時刻が確認できるようになっている。これは電源が切られているときでもバッテリーのおかげで時計が止まらないようにもなっている。しかしながら、時計としての精度はかなり低いもので、1ヶ月もしないうちに数分ずれたりする。
なんだ時計くらい多少ずれてもいいじゃないかと思いそうなものだが、サーバーとして動作するPCの時計のずれは、Webサーバーなどのアクセスログや、メールサーバーがつけるタイムスタンプに直接現れてしまう。何か困ったことがおきてログを調べるときに余計な手間をかけてしまうし、メールなどの場合未来からメールが届いたりして混乱を引き起こしたりすることもありうるのだ。
というわけで、せっかくの常時接続サーバーという特長を生かし、ntpによる時計あわせを行うようにした。
いつものようにapt一発。簡単。
root@host# apt-get install ntp
無事にインストールが終わったら、今度は設定ファイル( /etc/ntp.conf )を書く。どんなNTPサーバーがあるか、はここなどで調べよう。
server gps.kek.jp
server clock.nc.fukuoka-u.ac.jp
server ntp.sut.ac.jp
server ntp.nttsl.mfeed.ne.jp
driftfile /etc/ntp.drift
あとは、設定どおりにドリフトファイルが存在するようにし、サービスを再起動する。
root@host# touch /etc/ntp.drift ドリフトファイルを作成
root@host# /etc/init.d/ntp restart サービスを再起動する
ちゃんとサービスが動いているか確認するには、以下のコマンドを実行すればよい。なお、他のntpサーバーと同期するまでには、サービス起動後しばらくかかるので注意が必要である。
root@host# ntpq -pn
一番左の列に同期先のタイムサーバのIPアドレスが表示される。その先頭に*や+の記号がついていれば、そのタイムサーバーを信頼しているという意味である。
*は今実際にそのサーバーに時刻を同期させていることを示し、
+は*のサーバに問題があるときにいつでもそちらに切り替えられるという意味である