[俺日記]

qmail on Mac OS X(not Mac OS X Server) 6回目/daemontoolsを設定する。 / 2003-06-13 (金)

前回の引きで『次はtinydnsの設定です。』なんて書いていたが、考えてみるとまだdaemontoolsが動いていないじゃないか。ということで今回はdaemontoolsを設定〜。

daemontoolsは、ものの本やwebを見ると、rc.なんとかのスクリプトを修正してー、とかなんとか書いてあるが(と言うか、/etc/inittabか/etc/rc.localがあれば、package/installの最後に実行されるpackage/runで動くように設定されているはず)、Mac OS X的にはStartupItemsに登録するのが正しい姿だろう。とか正論吐いてるふりしてrcとかinittabを知らない事を正当化する事にする。

実は、ぐるりが昔djbdnsをインストールする時にDjbdns Mac OS X How-toというページを参考にしてやったんだが、その後でインストールしたqmailでエラーが発生してしまったので結局自分で書き直したスクリプトがあるので、それを使うことにする。なお、改変・再配布も自由お好きにどうぞ。改良したらぐるりにも教えてください。なお、この日記に従ってインストールした場合、素直にsvscanbootを使うとエラーになる(表示されないけど)ので、そのためのパッチも用意したので、あわせて当てる事にする。

% cd ${HOME}/Desktop
% curl -L -O http://gururi.com/qmail/daemontools_sss.tgz
% curl -L -O http://gururi.com/qmail/svscanboot.patch
% sudo ${SHELL}
password:
# mkdir -p /Library/StartupItems
# cd /Library/StartupItems
# tar zxpvf ${HOME}/Desktop/daemontools_sss.tgz
# cd /usr/local/bin
# cat ${HOME}/Desktop/svscanboot.patch|patch
patching file svscanboot
# /Library/StartupItems/Daemontools/Daemontools start(あるいはMacを再起動する。)

1行目でDesktopに移動している。${HOME}と書いてるのは、チルダを書くとSafariで文字化けするからだ(2バイトのチルダになってしまう)。
2〜3行目はスクリプトとパッチをダウンロードしている。いずれもDesktopにダウンロードする。
4〜5行目はシェルをroot権限で動かしている。案外知らない人が多いんだよなぁ。こうすると、「rootになる」んではなく、あくまで「シェルをroot権限で動かす」ので、$HOMEやその他の環境変数ももとのユーザのままです。なので、cdだけ入力しても~rootではなく、「あなたの」ホームディレクトリに移動します。お間違い無きよう。
6〜7行目、標準状態では/Library/StartupItemsは存在しないので作成して移動している。
8行目、/Library/StartupItemsでSystemStarterScriptを展開する。
9〜11行目で/usr/local/binに移動して、svscanbootを修正している。
最後にdaemontoolsを起動する。スクリプトとディレクトリがDaemontoolsになっているのは、単に他のスクリプトにあわせただけで深い意味は無い。突っ込み入れないように>信者の人

これでdjbのプログラムをインストールする下準備は整った。次は今度こそdjbdnsの設定。でもたいした事はしない。ぐるりんちではDynamic DNSを使っている都合上、ローカルネットワーク以外からの問い合わせは想定していない内部用のDNSしか立てないのでそのつもりでよろしく。

tar zvpf daemontools_sss.tgzの結果。
drwxr-xr-x 2 root wheel 0 Jun 12 23:58 Daemontools
-rwxr-xr-x 1 root wheel 562 Jun 13 00:02 Daemontools/Daemontools
drwxr-xr-x 2 root wheel 0 Jun 12 23:58 Daemontools/Resources
drwxr-xr-x 2 root wheel 0 Jun 13 00:03 Daemontools/Resources/English.lproj
-rw-r--r-- 1 root wheel 309 Jun 13 00:05 Daemontools/Resources/English.lproj/Localizable.strings
drwxr-xr-x 2 root wheel 0 Jun 13 00:02 Daemontools/Resources/Japanese.lproj
-rw-r--r-- 1 root wheel 315 Jun 13 00:02 Daemontools/Resources/Japanese.lproj/Localizable.strings
-rw-r--r-- 1 root wheel 340 Jun 12 10:42 Daemontools/StartupParameters.plist

[変更] .Macのアドレスを自鯖に。curlに-Lオプション(302に追随する)を追加。