daemontools :: daemontools 監視の apache に切り替える

daemontools監視起動に置き換えるため、現在起動中のapacheプロセスを停止させる

% sudo apachectl stop


apache監視用のディレクトリを作成

% sudo mkdir -m 755 /service/apache

(同時に /service/apache/supervise も作成される)


runスクリプトを作成

% cd /service/apache
% sudo vi run
#!/bin/sh
exec /usr/sbin/apache -F -f /etc/apache/httpd.conf

※引数は環境に合わせて適宜変更のこと。


runスクリプトに実行権限を付与

% sudo chmod 755 run


daemontools経由で起動しているか確認

% sudo svstat /service/apache



サーバを再起動しても apache の自動起動をさせない (Debianの場合)

以下の設定以外でも、何らかの対処をしないと、サーバの再起動後 apache が2重起動してしまうので注意。

▼起動スクリプトを homeディレクトリに退避(こんな方法ありか…)

sudo mv /etc/init.d/apache ~/

update-rc.d コマンドを使って自動起動をOFFにした方が良いのだろうが、apt-get upgrade でアップグレードした場合、設定が無効になってしまうらしいので、とりあえずこれで。
apt-get upgrade で /etc/init.d/apache が新たに作られてしまうと、元も子もないが。。。(未確認)

※. chkconfig コマンドが使えるOSではchkconfigで自動起動をOFFにできます。