daemontools インストール

参考1:http://cr.yp.to/daemontools/install.html
参考2:http://www.atmarkit.co.jp/flinux/rensai/qmail09/qmail09a.html


cloudforecast やら memcached やらの自動起動&プロセス監視に deamontools を使う。

公式を参考にインストール。

# mkdir -p /package
# chmod 1755 /package
# cd /package
# wget http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
# tar xzf daemontools-0.76.tar.gz
# rm -f daemontools-0.76.tar
# cd admin/daemontools-0.76

このままインストールしようとするとエラーがでる。
参考3:http://d.hatena.ne.jp/suzumura_ss/20081017


ので、 src/print-cc.sh を下記のように書き換える。

# echo exec "$cc" '-c ${1+"$@"}'
echo exec "$cc --include=/usr/include/errno.h " '-c ${1+"$@"}'


で、インストール。

# package/install

完了。と思いきや、Amazon Linux ではうまくsvscanboot が実行されていないっぽい。
公式を参考に、/etc/init/svscan.conf ってファイルを下記の内容で作成。

     start on runlevel [12345]
     respawn
     exec /command/svscanboot

うまく行った。
なんで、/etc/inittab を読み込まないのか調べたけど、よくわからん。
# Ubuntu9.10 だと、そもそも/etc/inittab がないらしい。
# Amazon Linux が Ubuntu9.10 をベースにしてるってことなのかな?

プロセスの起動やら停止

  • 停止
# svc -d /service/サービス名
  • 起動
# svc -u /service/サービス名
# touch /service/サービス名/down
  • プロセス削除
# svc -d /service/サービス名
# mv /service/サービス名 /service/.サービス名
# svc -x /service/.サービス名
  • サービス状態の監視
$ svstat /service/サービス名