2003年3月。
ドキュメントは探せば Web 上に豊富に。
というわけで手元で参照するための自分用メモ。
以下の記述中、「#
」はコマンドプロンプト。
(root になりっぱなしで作業してるもんで…)
ウソを書いてる可能性があるので注意。 間違いがありましたらご指摘くだされ。
参考サイト:
Google でキーワード「xntpd 設定
」で検索して上位にヒットする各サイト
インストール対象環境はとりあえず OpenBlockSS 、他に LAN 内の Vine Linux 機。
xntpd を make からインストールしようと思っていたが、
HDD イメージ中に既に /usr/bin/ntpd が入っていたので、
とりあえずこいつをそのまま使うことに。
従ってインストールのメモは省略。
make からインストールする場合は基本的に ntpd アーカイブを展開したディレクトリに移動して、
「# ./configure; make; make install
」で何も問題ないはず。
(当然、「# make install
」は root 権限で)
インターネット上で公開されている ntp サーバのリストは、ntp.org にある。
ウチのローカルネットワークの場合、ルータに ntpd 機能がついているので、こいつをローカルネットワークの親サーバとして使えば、よそのサーバに余計な負荷をかけない。 (しかしどっちみちこのルータからは、いずれかの大手サーバを参照する必要はあるが)
国内でよく参照されている ntp サーバとしては
clock.tl.fukuoka-u.ac.jp
clock.nc.fukuoka-u.ac.jp
あたりが定番 (??) っぽい模様。
(一時あまりにも定番で使われて負荷に耐えられなくなってたりした (?) ようなので、
契約プロバイダが提供しているサーバとかのなるべくネットワーク的に近場な別サーバを探した方がよさげ)
なお、 ntp サーバの指定にはドメイン名ではなく IP アドレスを直接指定しても可。
(ていうかその方が DNS サーバへの問い合わせをしなくて済む分、動作も負荷も微妙に軽いハズ)
とりあえず、コマンドでシステムの時間を手動であわせておく。 (root 権限で)
# ntptime [親ntpサーバ]
さらに、これをハードウェアのクロックに反映させる。 (させとかないと、マシンの再起動時にハードウェアクロックから狂ったままの時間を拾って再びシステム時間が狂ってしまうらしい。定期的にやらないで大丈夫か?)
# hwclock --systohc
方法としては、 cron で定期的に (root 権限で) ntpdate を起動させるのと、 システム起動時に ntpd デーモンを走らすのと、 2通りある。 ローカルネットワークの他マシンの親 ntp サーバとして使うためには、後者の方法をとる。 (ただ、システムリソースの足りない気味な OpenBlockSS あたりで走らせるのは負担がやや大きい可能性もあり…)
ここでは ntpd を走らせる方向で設定。
/etc/ntpd.conf
の設定server [NTPサーバ名またはIPアドレス] driftfile /etc/ntp.drift
ntp.drift ファイルは、クロック補正のための情報を保存しておくファイル (らしい) 。
事前に「# touch /etc/ntp.drift
」で作成しておく。
server は時間合わせに使いたい ntp サーバ。複数行列挙してもいい。 (しなくてもいい)
列挙する場合は 1サーバ 1行で。
このへんはそれぞれのシステムに定番の方法で。
OpenBlockSS の場合メンドくさいので /etc/rc.d/rc.local
に直書き。以下の記述を追加。
if [ -x /usr/bin/ntpd -a -f /etc/ntp.conf ]; then /usr/bin/ntpd -c /etc/ntp.conf fi
「-x」は実行ファイル (が存在する) かどうか、「-f」はファイル (が存在する) かどうか、「-a」は条件判定の AND 。 でいいんだろうなたぶん。 OpenBlockSS なので特にメッセージを出力もせず、無言で起動させている。 (boot ログなどに残すよう何か文字列を吐いといた方がいいのかな? boot ログって参照しないしよく分からん…あとで調べよっと)
ちゃんと自動起動するか念のためリブートして確認。
コマンド「# ntpq -p
」で、動作中の ntpd の設定が正しいか確認。
表示内容については「ntpdの設定」の下の方を参照…。
以上。