HTTPサーバ等、外部にサービスを公開するサーバでは、システムの時計を正確にそろえておく必要があります。
時計合わせのプロトコルとしては「NTP」が「RFC 1305」で規定されており、FreeBSDでもこのNTPを利用した時計合わせのコマンド「ntpdate」が用意されています。
このページでは、この「ntpdate」を利用してシステムの時計を合わせる方法について説明します。
「ntpdate」はコマンドラインから利用することが可能です。
以下のようにすることにより、NTPサーバから正確な時間を取得し、システム時計に反映させます。
$ ntpdate ntp1.jst.mfeed.ad.jp |
「ntp1.jst.mfeed.ad.jp」で指定されているのは、NTPサーバです。
利用可能なNTPサーバを適宜設定してください。
【注意】
NTP全体の安定稼動のため、stratum 1やstratum 2のサーバを直接利用しないようにしてください。
大抵のISPならば自前のNTPサーバを利用者に開放していますので、そちらをご利用ください。
「ntpdate」はシステムの起動時に自動的に呼び出すこともできます。
システムの起動時に「ntpdate」を利用してシステムの時計を合わせるには、「/etc/rc.conf」を以下のように編集します。
$ vi /etc/rc.conf ntpdate_enable="YES" ntpdate_flags="-b ntp1.jst.mfeed.ad.jp" |
上記のようにすることにより、システムの起動時に「ntpdate」が自動的に呼び出されるようになります。
前項では「rc.conf」に設定を行うことにより、システムの起動時に自動的に時計合わせを行う方法を説明しましたが、これをさらに進めて、一定時間ごとに時計合わせを行うこともできます。
一定時間ごとに時計合わせを行うには、「cron」を利用します。
「crontab」を利用して、「cron」が定期的に行う処理を下記の通り記述します。
$ crontab -u root -e |
上記のように入力すると、エディタが起動しますので、以下の一行を追加します。
17 0,4,8,12,16,20 * * * /usr/sbin/ntpdate ntp1.jst.mfeed.ad.jp |
上記のように設定することにより、「cron」が 0時17分、 4時17分、 8時17分、12時17分、16時17分、20時17分にそれぞれ「ntpdate」を実行するようになります。
