2022年8月、ホームページを全面リニューアルしました! 情報を分かりやすくお伝えできるサイト作りを目指してまいります。

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 syncが enableにならないと時刻合わせが有効にならない。
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.桜時計で時刻合わせの確認
桜時計 でローカルクライアントマシンから時刻を合わせてみた。以下のようになる。

以上

コメント