こんにちは、私はスクリプトが初めてです。たくさん検索しましたが、見つかったのはフルアクセス権を持つスクリプトだけでした。 / etcへのアクセス権がありません。クラウドのホストで作業していますが、アクセスが制限されているため、すべての試行が失敗します。これまで私はこれを持っています:
#!/bin/sh
prog="supervisord"
prefix="/usr/local/"
exec_prefix="${prefix}"
prog_bin="${exec_prefix}/bin/supervisord -c /home/user/supervisor/supervisord.conf"
PIDFILE="/var/run/$prog.pid"
start()
{
echo -n $"Starting $prog: "
daemon $prog_bin --pidfile $PIDFILE
[ -f $PIDFILE ] && success $"$prog startup" || failure $"$prog startup"
echo
}
stop()
{
echo -n $"Shutting down $prog: "
[ -f $PIDFILE ] && killproc $prog || success $"$prog shutdown"
echo
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status $prog
;;
restart)
stop
start
;;
*)
echo "Usage: $0 {start|stop|restart|status}"
;;
esac
ただし、常に次のエラーが発生します。
Starting supervisord: script.sh: 27: script.sh: daemon: not found
script.sh: 28: script.sh: failure: not found
助けてください。何が起こっているのかわかりません...
答え1
init.d
あなたのexample()スクリプトは、それを使用して他の(デーモンではない)プログラムをデーモン化するために使用するいくつかのプログラムから得られたようですが、daemon
そのスクリプトはありません。
私はそれをインストールしておらdaemon
ず(Ubuntu 12.04)必要ありませんsupervisord
。あなたは--pidfile=FILE
それ自体で直接使用することができ、supervisord
それは自分自身を保護します特に指示がない限り。
書き込みが可能であることを確認する/var/run/supervisord.pid
か、アクセス可能な別の場所を指定する必要があります。