Odoo (OpenERP) script start-stop-daemon

0

Eu instalei o odoo e tente o openerp-server de início manual. Tudo bem. Meu próximo passo é tentar adicionar o iodo ao início automático. Para isso eu uso este script:

#!/bin/sh

### BEGIN INIT INFO
# Provides:             openerp-server
# Required-Start:       $remote_fs $syslog
# Required-Stop:        $remote_fs $syslog
# Should-Start:         $network
# Should-Stop:          $network
# Default-Start:        2 3 4 5
# Default-Stop:         0 1 6
# Short-Description:    Enterprise Resource Management software
# Description:          Open ERP is a complete ERP and CRM software.
### END INIT INFO

PATH=/bin:/sbin:/usr/bin
DAEMON=/opt/odoo/openerp-server
NAME=openerp-server
DESC=openerp-server

# Specify the user name (Default: openerp).
USER=root

# Specify an alternate config file (Default: /etc/openerp-server.conf).
CONFIGFILE="/etc/openerp-server.conf"

# pidfile
PIDFILE=/var/run/$NAME.pid

# Additional options that are passed to the Daemon.
DAEMON_OPTS="-c $CONFIGFILE"

[ -x $DAEMON ] || exit 0
[ -f $CONFIGFILE ] || exit 0

checkpid() {
    [ -f $PIDFILE ] || return 1
    pid='cat $PIDFILE'
    [ -d /proc/$pid ] && return 0
    pid='cat $PIDFILE'
    [ -d /proc/$pid ] && return 0
    return 1
}

case "${1}" in
        start)
                echo -n "Starting ${DESC}: "

                start-stop-daemon --start --quiet --pidfile ${PIDFILE} \
                        --chuid ${USER} --background --make-pidfile \
                        --exec ${DAEMON} -- ${DAEMON_OPTS}

                echo "${NAME}."
                ;;

        stop)
                echo -n "Stopping ${DESC}: "

                start-stop-daemon --stop --quiet --pidfile ${PIDFILE} \
                        --oknodo

                echo "${NAME}."
                ;;

        restart|force-reload)
                echo -n "Restarting ${DESC}: "

                start-stop-daemon --stop --quiet --pidfile ${PIDFILE} \
                        --oknodo

                sleep 1

                start-stop-daemon --start --quiet --pidfile ${PIDFILE} \
                        --chuid ${USER} --background --make-pidfile \
                        --exec ${DAEMON} -- ${DAEMON_OPTS}

                echo "${NAME}."

                echo "${NAME}."
                ;;

        *)
                N=/etc/init.d/${NAME}
                echo "Usage: ${NAME} {start|stop|restart|force-reload}" >&2
               exit 1
               ;;
esac

exit 0

Quando inicio o script, o arquivo pid é criado, mas o serviço não funciona. Além disso, se eu tentar pará-lo, vejo msg:

Stopping openerp-server: start-stop-daemon: warning: failed to kill 1204: No such process openerp-server.

Eu não entendo o que faço de errado. E meu velho amigo google não pode me ajudar. isso não ajuda

Talvez alguém tenha resolvido este problema?

    
por Yuri Shtrikker 14.07.2015 / 12:27

2 respostas

1

Você está tentando executar o openerp como root, por isso ele falha, mude:

# Specify the user name (Default: openerp).
USER=root

por

# Specify the user name (Default: openerp).
USER=YOUR_USER_THAT_RUNS_ODOO
    
por Carlos Contreras 31.12.2015 / 16:46
0

Eu enfrentei o mesmo problema. Eu consertei adicionando o script init.d do odoo-server no menu inicial do sistema.
Crie um link com o seguinte comando:

$ sudo update-rc.d odoo-server defaults
    
por JohnWolf 28.08.2018 / 12:50