« iptablesの設定保存 | メイン | apmdについて »

2005年10月30日

SHOUTcastのスクリプト

SHOUTcastを入れた後、起動スクリプトを「/usr/local/shout/shout」として記述したが、自動起動にするために「/etc/init.d/」内にシンボリックリンクを貼り、
# update-rc.d shout defaults 98
としたが、なぜかうまくいかない。
sc_servは起動するのだが、sc_transが起動しないのだ。

# cd /usr/local/shout
# ./shout
ならば、2つとも起動するので、「/etc/init.d/」内にスクリプトを記述してみた。

[/etc/init.d/shout.sh]
------------------------------------------------
#!/bin/sh

case $1 in
  'start')
    cd /usr/local/shout/
    ./shout
    ;;
  'stop')
    kill `ps -C sc_trans_linux -o pid=` 2>1 /dev/null
    kill `ps -C sc_serv -o pid=` 2>1 /dev/null
    ;;
  *)
    echo "Error"
    ;;
esac
------------------------------------------------
stopの際に面倒くさいことをやっているが、SHOUTcastの場合、プロセスIDを調べてkillしなければならないため・・・(実はエラーメッセージが出ているが、画面には出力しないようにしている)。

# chmod 0755 shout.sh
で、実行権を設定。

# update-rc.d -f shout remove
で、シンボリックリンクへのリンクファイルを削除。

# update-rc.d shout.sh defaults 98
で、自動起動にして完了。

投稿者 masatsu : 2005年10月30日 16:06

コメント