Odoo中文社区可以通过以下三个域名访问:shine-it.net , odoocn.org,odoo.net.cn

原论坛用户的基本信息和发帖这里都予以保留,请注意:原论坛用户无需重新注册新用户,但是您的密码需要重置

开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

如果您登录系统碰到问题,请在微信公众号留言:

紧急求助:设置openerp-web自启动出现问题



  • openerp已经安装完成,启动目前也没有问题,想将openerp-web设置为开机自启动,和openerp-server一样(用deb包安装的)。我按照论坛中的帖子,使用的是如下的步骤:
    sudo cp /usr/local/bin/openerp-web /etc/init.d/
    sudo cp /usr/local/lib/python2.6/dist-packages/openerp_web-6.0.2-py2.6.egg/doc/openerp-web.cfg /etc/openerp-web.cfg
    这两个文件cp过去后,继续:
    sudo chmod +x /etc/init.d/openerp-web
    sudo update-rc.d openerp-web defaults
    然后重启系统,结果在openerp-server和postgresql启动后,还没有进入控制台(我装的是server),web就启动了,而且无法退出……我的意思是,在系统启动的过程中,我能看到openerp-web的启动信息,就像在一个控制台窗口中一样,由于直接是字符界面,不像图形界面中可以关闭控制台窗口,所以导致根本无法进入系统。
    用ctrl+alt+del,想重启机器,结果又出现了openerp-web的启动信息,系统停滞,无法重启,只能按电源键重启。
    请帮忙看看这个问题应该如何解决呢?我设置openerp-web自启动的方式是否不正确?应该如何设置呢?
    谢谢!



  • openerp已经安装完成,启动目前也没有问题,想将openerp-web设置为开机自启动,和openerp-server一样(用deb包安装的)。我按照论坛中的帖子,使用的是如下的步骤:
    sudo cp /usr/local/bin/openerp-web /etc/init.d/
    sudo cp /usr/local/lib/python2.6/dist-packages/openerp_web-6.0.2-py2.6.egg/doc/openerp-web.cfg /etc/openerp-web.cfg
    这两个文件cp过去后,继续:
    sudo chmod +x /etc/init.d/openerp-web
    sudo update-rc.d openerp-web defaults
    然后重启系统,结果在openerp-server和postgresql启动后,还没有进入控制台(我装的是server),web就启动了,而且无法退出……我的意思是,在系统启动的过程中,我能看到openerp-web的启动信息,就像在一个控制台窗口中一样,由于直接是字符界面,不像图形界面中可以关闭控制台窗口,所以导致根本无法进入系统。
    用ctrl+alt+del,想重启机器,结果又出现了openerp-web的启动信息,系统停滞,无法重启,只能按电源键重启。
    请帮忙看看这个问题应该如何解决呢?我设置openerp-web自启动的方式是否不正确?应该如何设置呢?
    谢谢!



  • 您不会用linux啊
    ctrl+alt+F2
    整个世界安静了



  • 不推荐直接在 console 上操作...
    我一般最小化安装 Ubuntu 后.会首先装上 sshd  server, 然后 在外面用 ssh client 连进去操作.



  • ctrl+alt+F2,是进入console吧,我没装图形界面,我试试这个功能。
    不过目前我想知道我设置openerp-web自启动的方式正确吗?因为现在这样,连接数据库的时候是出错的,说明server并没有完全启动,web启动后阻止了其他进程的启动。
    所以我现在想知道的是,为何web没有像server一样是后台启动,而是前台启动呢?
    谢谢



  • 下载了一个sysv-rc-conf ,结果设置错了,把openerp-web设置成S了,结果现在连root都进不去了,就卡死在openerp-web的启动那里。请问openerp-web装完后,他的启动文件是在/usr/local/bin/openerp-web这里吗,这个文件需要修改吗?如何才能让他和openerp-server一样启动?
    谢谢


  • 管理员

    在openerp-web的安装目录下有一个script的目录,那里有现成的设置daemon的脚本,你可以试试



  • 我用启动光盘进入控制台,删除启动文件,现在已经可以进入系统了,但是对于openerp-web设置自启动的问题,还是想要解决哦,openerp-web我只找到了在/usr/local/bin下有一个openerp-web。没找到他的安装目录,在/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.2-py2.6.egg目录下,没有scripts目录,只有addons,doc,egg-info,openobjects这几个目录
    我安装的是openerp-web-6.0.2.tar.gz,请问装完后,安装目录应该在哪里呢?
    谢谢!


  • 管理员

    将下面的代码保存为openerp-web,添加运行权限,更改USER变量, 放到/etc/init.d目录下,
    [code]
    #!/bin/sh

    ### BEGIN INIT INFO
    # Provides:            openerp-web
    # Required-Start:      $syslog
    # Required-Stop:        $syslog
    # Should-Start:        $network
    # Should-Stop:          $network
    # Default-Start:        2 3 4 5
    # Default-Stop:        0 1 6
    # Short-Description:    OpenERP Web - the Web Client of the OpenERP
    # Description:          OpenERP is a complete ERP and CRM software.
    ### END INIT INFO

    PATH=/sbin:/bin:/usr/sbin:/usr/bin
    DAEMON=/usr/bin/openerp-web
    NAME=openerp-web
    DESC=openerp-web

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

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

    # 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
        return 1
    }

    if [ -f /lib/lsb/init-functions ] || [ -f /etc/gentoo-release ] ; then

        do_start() {
            start-stop-daemon --start --quiet --pidfile $PIDFILE <br />            --chuid $USER  --background --make-pidfile <br />            --exec $DAEMON -- $DAEMON_OPTS
           
            RETVAL=$?
            sleep 5        # wait for few seconds

            return $RETVAL
        }

        do_stop() {
            start-stop-daemon --stop --quiet --pidfile $PIDFILE --oknodo

            RETVAL=$?
            sleep 2        # wait for few seconds
            rm -f $PIDFILE  # remove pidfile

            return $RETVAL
        }

        do_restart() {
            start-stop-daemon --stop --quiet --pidfile $PIDFILE --oknodo

            sleep 2        # wait for few seconds
            rm -f $PIDFILE  # remove pidfile

            start-stop-daemon --start --quiet --pidfile $PIDFILE <br />            --chuid $USER --background --make-pidfile <br />            --exec $DAEMON -- $DAEMON_OPTS

            RETVAL=$?
            sleep 5        # wait for few seconds

            return $RETVAL
        }

    else
       
        do_start() {
            $DAEMON $DAEMON_OPTS > /dev/null 2>&1 &
           
            RETVAL=$?
            sleep 5        # wait for few seconds

            echo $! > $PIDFILE  # create pidfile

            return $RETVAL
        }

        do_stop() {

            pid=cat $PIDFILE
            kill -15 $pid

            RETVAL=$?
            sleep 2        # wait for few seconds
            rm -f $PIDFILE  # remove pidfile

            return $RETVAL
        }

        do_restart() {

            if [ -f $PIDFILE ]; then
                do_stop
            fi

            do_start

            return $?
        }

    fi

    start_daemon() {

        if [ -f $PIDFILE ]; then
            echo "pidfile already exists: $PIDFILE"
            exit 1
        fi

        echo -n "Starting $DESC: "

        do_start

        checkpid

        if [ $? -eq 1 ]; then               
            rm -f $PIDFILE
            echo "failed."
            exit 1
        fi

        echo "done."
    }

    stop_daemon() {

        checkpid

        if [ $? -eq 1 ]; then
            exit 0
        fi

        echo -n "Stopping $DESC: "

        do_stop

        if [ $? -eq 1 ]; then
            echo "failed."
            exit 1
        fi

        echo "done."
    }

    restart_daemon() {

        echo -n "Reloading $DESC: "

        do_restart

        checkpid

        if [ $? -eq 1 ]; then               
            rm -f $PIDFILE
            echo "failed."
            exit 1
        fi

        echo "done."
    }

    status_daemon() {

        echo -n "Checking $DESC: "

        checkpid

        if [ $? -eq 1 ]; then
            echo "stopped."
        else
            echo "running."
        fi
    }

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

    exit 0

    # vim: sts=4 st=4 et

    [/code]

    将下面的脚本保存为openerp-web,添加运行权限,放到/usr/bin目录下
    [code]#!/usr/bin/env python
    import sys

    from openobject.commands import start, ConfigurationError

    if name == "main":
        try:
            start()
        except ConfigurationError, exc:
            sys.stderr.write(str(exc)+"\n")
            sys.exit(1)
    [/code]



  • 照着做了,但是重启后发现,openerp并没有启动起来,用chkconfig查看,openerp是on的状态,但是实际并没有启动。暂时先放弃了,装了一个X,启动了两个concole…………



  • 照着校长的做,然后执行下面命令就OK,然后重启就启动为服务了
    sudo update-rc.d openerp-web defaults 90 2 3 4 5 6



  • 谢谢lky,我试一下



  • 在UBUNTU桌面版下可以看我的O基础安装,后面也有自启动OEWEB.


登录后回复
 

与 Odoo 中文社区 的连接断开,我们正在尝试重连,请耐心等待