2004年05月27日 木曜日
自宅サーバ設置 その2
今日からDNSサーバ、メールサーバ、Webサーバと言ったコアになるサービスの立ち上げを行う。DNSはdjbdns、メールサーバはqmailと言う感じでdjbが作ったサービスで固めることにした。HTTPサーバは言わずともしれたApacheを選択。
daemontool
daemontoolはdjb謹製のデーモン管理ツールである。デーモンの起動/停止/設定ファイルの読み直しなどの操作を統一的に扱えるようにできたり、ログローテーションができたり、必要なデーモンが常時起動しているか監視できるツールである。一昨日までの対応でdaemontoolは使えるようになっているので、あとはざくざくサービスを登録すればよいと言うわけだ。
準備
こんな起動スクリプト(FreeBSDの場合)を/etc/rc.d/に入れておけばdaemontoolはサーバ起動時に自動的に起動する。
#!/bin/sh
#
## daemontools by djb
#
DTdir=/usr/local/daemontools/bin
case "$1" in
start)
if [ -x $DTdir/svscan -a -d /service ]; then
env - PATH=$DTdir\:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin \
csh -cf 'svscan /service &' ; echo -n ' daemontools'
fi ;;
stop)
$DTdir/svc -d /service/*
(sleep 1; killall svscan)& ;;
esac
ただし上のスクリプトを読めば分かるように、/serviceを作らないとdaemontoolは使えるようにならないので、早速/serviceを作成する。/ ディレクトリにファイルを作るのに抵抗を感じないわけではないが、djb-toolを使うという時点で自分のポリシーよりもdjb先生の方法論を優先すべきだろう。ということで_躊躇なくディレクトリを作る。_(どうせこのディレクトリにはシンボリックリンクしか置かないし。気にしない。)
mkdir /service
chmod 755 /service