タイムサーバーの設定
家庭内サーバーを使っていて気になりだしたのが、サーバーの時間設定である。必要時だけ サーバーを立ち上げていた時は、起動オプションで時間取得のコマンドを実行すればよかったが、常時稼働となるとそれでは稼働時間と共に徐々にずれてしま う。 これを解消する方法には、 * 稼働中に有るタイミングで時間あわせのコマンドntpdateで時間取得し、hwclock -wでハード時計に書き込む。 この場合LAN内のクライアントは、サーバーと同じ方法(Windowsでは桜時計)とする。 * 家庭内サーバーをタイムサーバーとして、クライアントはそれに時刻あわせする。 が考えられ、前者の方法は、/etc/cron.dailyに gettime.sh ----------- /usr/bin/ntpdate ntp1.jst.mfeed.ad.jp (IPアドレスは210.173.160.27) /sbin/hwclock -w なるファイルを作成して chmod 755 gettime.sh などとして実行属性としておく。 次に後者のタイムサーバーを設定する方法は、まず、以下の2ファイ ルをCDROMやturbolinuxのFTPサイトから入手してインストールする。 rpm -Uvh xntp3-5.93-x.i386.rpm rpm -Uvh xntp3-server-5.93-x.i386.rpm # /etc/ntp.confファイルを作成し --------------------------------------- server 210.173.160.27 restrict default notrust ignore restrict 127.0.0.1 mask 255.0.0.0 nomodify restrict 192.168.0.0 mask 255.255.255.0 nomodify restrict 210.173.160.27 nomodify driftfile /etc/ntp.drift --------------------------------------- # /etc/rc.d/init.d/xntpd start としてxntpdをスタートさせます。 その後 # ntpq -p として同期が取れているか確認し、下記のように表示されれば、終了 です。 remote refid st t when poll reach delay offset disp ============================================================================== rsm1.tokyo.jp ntp1.xxx.co.jp 2 u 13 64 3 66.36 4.990 7880.65 remote refid st t when poll reach delay offset disp ============================================================================== ntp-tk01.xxx.co 0.0.0.0 16 u - 64 0 0.00 0.000 16000.0 この様に表示された場合は上位のNTPサーバーと通信できていない ようである。 設定を確認しそれでも通信が確立しない場合は同期を取ることを許可 されている別のサーバーに変更しそれでも解決しない場合は TCP123ポートを使用して外部と通信できることを確認して下さ い。 この後、LAN内のクライアントから時間が取得できるかの確認が 必要であるが、私の場合はWindowsの桜時計で実施した。 ただし、ここで少し驚いたのは、xntpdをスタートさせた直後 はポートがビジーだと言われ、クライアントからの時間取得が出来なかったことである。 これはサーバーが時間を取得するのに時間がかかり、その間はクラ イアントからの要求を受け付けないからではないだろうか。 最後にturboserviceからxnptdをサーバー起動時 に立ち上げるように設定したことは言うまでもない。 また、ハードの時計との時間差が大きくなると追従できなくなるよ うであるので、ハードの時計も次のようなファイルを適当な間隔で実行しておくことが良いようである。(私の場合は /etc/cron.daily 内に入れ一日一回実行している。) timeset.sh ------------------------------ #!/bin/sh /sbin/hwclock -w ------------------------------ 前ページ |