Execute o supervisord sem acesso root

Execute o supervisord sem acesso root

Olá, sou muito novo em escrever scripts e pesquisei muito, mas tudo que encontrei foram scripts com acesso total. Não tenho acesso ao /etc. Estou trabalhando em um host na nuvem, mas tenho acesso limitado, por isso todas as minhas tentativas não tiveram sucesso. Até agora eu tenho isso:

    #!/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

Mas sempre recebo esse erro:

   Starting supervisord: script.sh: 27: script.sh: daemon: not found
   script.sh: 28: script.sh: failure: not found

Por favor me ajudem, não tenho ideia do que está acontecendo...

Responder1

Parece que você obteve seu init.dscript de exemplo ( ) de algo que usa o programa daemonpara daemonizar outros programas (não-daemon) e está faltando esse programa.

Não tenho daemoninstalado (Ubuntu 12.04) e você não precisa dele para supervisord. Você pode usar --pidfile=FILEdiretamente em supervisordsi mesmo e ele irá se daemonizara menos que seja orientado de outra forma.

Você deve verificar se pode escrever para /var/run/supervisord.pidou especificar um local diferente e acessível.

informação relacionada