Kozupon.com    
 
 Debianでntp-server!


ntpサーバのソースインストール編が ここ で説明されている。時刻合わせって非常に大切だと言うことを常々思ってる。知らないうちに、メールサーバの時刻がくるっていたり・・・・。管理者としては、非常に恥ずかしい思いもしてきた。いや、これからもそういうことが有るだろうが、やはりntpサーバから定期的に時刻をゲットすることは重要だろう。ところで、 ここ でも話をしているが、ntpサーバの元祖福岡大学のntpサーバがパンクしそうだ!と言う話がある。したがって、出来るだけあなたの契約してるプロバイダのntpサーバや、最近公開された 独立行政法人 情報通信研究機構 ( 133.243.238.164 )のntpサーバなどへ同期を取ったらいかがだろう。

インストール環境 )
OS : Debian GNU/Linux 3.1Sarge
マシン : Dell OptiplexGX1


1.インストール
fifo:~# apt-get update
fifo:~# apt-get install ntp ntpdate ntp-doc ntp-simple

"[!] Configuring Ntp-simple" のダイアログで "Specify NTP time servers" で上位のntpサーバ名のリストを空白で区切って記入する。"Overwrite /etc/ntp.conf?"で < Yes > にすると/etc/ntp.confと/etc/default/ntp-serversに書き込まれる。
再編集する場合は、
fifo:~# dpkg-reconfigure ntp-simple
を実行すれば、同じ事の再設定が出来る。


2.環境設定
1)ntp.confの設定
fifo:~# vi /etc/ntp.conf

server 133.243.238.164    # nict
server 203.255.112.4      # time.nuri.net
driftfile /var/lib/ntp/drift
multicastclient         # listen on default 224.0.1.1
broadcastdelay 0.008

俺の設定はこれだけだけど。

2)driftファイルを作る
fifo:~# touch /var/lib/ntp/drift


3.ntp-serverの起動
1)起動
以下が起動ファイルの内容
fifo:~# more /etc/init.d/ntp-server
#!/bin/sh

PATH=/sbin:/bin
FLAGS="defaults 23"

test -f /usr/sbin/ntpd || exit 0

case "$1" in
start)
echo -n "Starting NTP server: ntpd"
start-stop-daemon --start --quiet --pidfile /var/run/ntpd.pid --exec /usr/sbin/ntpd
-- -p /var/run/ntpd.pid
echo "."
;;
stop)
echo -n "Stopping NTP server: ntpd"
start-stop-daemon --stop --quiet --pidfile /var/run/ntpd.pid
echo "."
;;
restart|force-reload)
echo -n "Restarting NTP server: ntpd... "
start-stop-daemon --stop --quiet --pidfile /var/run/ntpd.pid
sleep 2
start-stop-daemon --start --quiet --exec /usr/sbin/ntpd -- -p /var/run/ntpd.pid
echo "done."
;;
*)
echo "Usage: /etc/init.d/ntp-server {start|stop|restart|force-reload}"
exit 1
;;
esac

exit 0

fifo:~# /etc/init.d/ntp-server start

2)起動後のプロセス確認
fifo:~# ps -ef

UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Jun09 ? 00:00:00 init [2]
root 2 1 0 Jun09 ? 00:00:00 [ksoftirqd/0]
root 3 1 0 Jun09 ? 00:00:03 [events/0]
root 4 3 0 Jun09 ? 00:00:00 [khelper]
root 19 3 0 Jun09 ? 00:00:00 [kblockd/0]
root 39 3 0 Jun09 ? 00:00:00 [pdflush]
root 40 3 0 Jun09 ? 00:00:07 [pdflush]
root 42 3 0 Jun09 ? 00:00:00 [aio/0]
root 41 1 0 Jun09 ? 00:00:09 [kswapd0]
root 188 1 0 Jun09 ? 00:00:00 [kseriod]
root 292 1 0 Jun09 ? 00:00:25 [kjournald]
root 711 1 0 Jun09 ? 00:00:00 [khubd]
root 1592 1 0 Jun09 ? 00:00:02 /sbin/syslogd
root 1595 1 0 Jun09 ? 00:00:00 /sbin/klogd
root 1603 1 0 Jun09 ? 00:00:00 /usr/sbin/inetd
root 1697 1 0 Jun09 ? 00:00:05 /usr/lib/postfix/master
postfix 1700 1697 0 Jun09 ? 00:00:09 qmgr -l -t fifo -u -c
root 1706 1 0 Jun09 ? 00:00:04 /usr/sbin/sshd
root 1719 1 0 Jun09 ? 00:00:00 /usr/sbin/squid -D -sYC
proxy 1721 1719 0 Jun09 ? 00:25:00 (squid) -D -sYC
proxy 1723 1721 0 Jun09 ? 00:00:39 (unlinkd)
daemon 1726 1 0 Jun09 ? 00:00:00 /usr/sbin/atd
root 1729 1 0 Jun09 ? 00:00:00 /usr/sbin/cron
root 1751 1 0 Jun09 tty2 00:00:00 /sbin/getty 38400 tty2
root 2469 1 0 Jun09 tty1 00:00:00 /sbin/getty 38400 tty1
root 28112 1 0 09:04 ? 00:00:00 /usr/sbin/ntpd -p /var/run/ntpd.pid
postfix 28121 1697 0 09:31 ? 00:00:00 pickup -l -t fifo -u -c
root 28838 1706 1 10:48 ? 00:00:00 sshd: mity [priv]
mity 28840 28838 0 10:48 ? 00:00:00 sshd: mity@pts/0
mity 28841 28840 0 10:48 pts/0 00:00:00 -bash
root 28846 28841 0 10:48 pts/0 00:00:00 -su
root 28850 28846 0 10:48 pts/0 00:00:00 ps -ef

濃い青字がntpdのプロセス

3)エラーが無いかの確認
fifo:~# more /var/log/daemon.log

省略
Jun 27 09:04:16 fifo ntpd[27385]: ntpd exiting on signal 15
Jun 27 09:04:42 fifo ntpd[28112]: ntpd 4.2.0a@1:4.2.0a+stable-2-r Fri Aug 26 10:30:12 UTC 2005 (1)
Jun 27 09:04:42 fifo ntpd[28112]: precision = 2.000 usec
Jun 27 09:04:42 fifo ntpd[28112]: Listening on interface wildcard, 0.0.0.0#123
Jun 27 09:04:42 fifo ntpd[28112]: Listening on interface wildcard, ::#123
Jun 27 09:04:42 fifo ntpd[28112]: Listening on interface lo, 127.0.0.1#123
Jun 27 09:04:42 fifo ntpd[28112]: Listening on interface eth0, 192.168.0.12#123
Jun 27 09:04:42 fifo ntpd[28112]: kernel time sync status 0040
Jun 27 09:04:42 fifo ntpd[28112]: Frequency format error in /var/lib/ntp/drift
                                 ↑ このエラーが気になるけど原因不明。まあ、正常に動いてるようなのでここでは無視。


4.外部ntpサーバとの同期
ターゲットntpサーバとの同期は、以下のコマンドで確認できる。
fifo:~# ntpq -p
remote refid st t when poll reach delay offset jitter
================================================================
ntp-b3.nict.go. .PPS. 1 u 43 64 377 7.317 9.977 2.129
ns2.higlobe.net 211.115.194.21 3 u 19 64 377 164.262 69.155 2.137

ntpサーバは、同期すると以下のように * アスタリスクマークが付く。
fifo:~# ntpq -p
remote refid st t when poll reach delay offset jitter
================================================================
*ntp-b3.nict.go. .PPS. 1 u 43 64 377 7.317 9.977 2.129
xns2.higlobe.net 211.115.194.21 3 u 19 64 377 164.262 69.155 2.137

さらに、ローカルクライアントマシンがntpサーバとして利用できるのは、以下のようにkernel time syncenableにならないと時刻合わせが有効にならない。
fifo:~# more /var/log/daemon.log
省略
Jun 27 09:04:42 fifo ntpd[28112]: kernel time sync status 0040
省略
Jun 27 09:27:08 fifo ntpd[28112]: kernel time sync disabled 0041
Jun 27 09:29:17 fifo ntpd[28112]: kernel time sync enabled 0001
省略


5.桜時計で時刻合わせの確認
桜時計 でローカルクライアントマシンから時刻を合わせてみた。以下のようになる。

以上


 
 
 



Copyright 2005 Kozupon.com.