Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- ### BEGIN INIT INFO
- # Provides: openerp-server
- # 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 Server
- # Description: OpenERP is a complete ERP and CRM software.
- ### END INIT INFO
- PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin/
- #DAEMON=/usr/local/bin/odoo-server
- DAEMON=/usr/local/bin/odoo-server
- NAME=odoo-server
- DESC=odoo-server
- # Specify the user name (Default: openerp).
- USER="odoo"
- # Specify an alternate config file (Default: /etc/openerp-server.conf).
- CONFIGFILE="/etc/odoo-server.conf"
- # pidfile
- PIDFILE=/var/run/$NAME.pid
- # Additional options that are passed to the Daemon.
- #DAEMON_OPTS="-c $CONFIGFILE --update=all"
- #DAEMON_OPTS="-c $CONFIGFILE --init=all"
- 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 \
- --chuid $USER --background --make-pidfile \
- --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
- rm -f $PIDFILE
- # wait for few seconds
- # remove pidfile
- return $RETVAL
- }
- do_restart() {
- start-stop-daemon --stop --quiet --pidfile $PIDFILE --oknodo
- sleep 2
- rm -f $PIDFILE
- # wait for few seconds
- # remove pidfile
- start-stop-daemon --start --quiet --pidfile $PIDFILE \
- --chuid $USER --background --make-pidfile \
- --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
- return $RETVAL
- # create pidfile
- }
- do_stop() {
- pid=`cat $PIDFILE`
- kill -15 $pid
- RETVAL=$?
- sleep 2
- rm -f $PIDFILE
- # wait for few seconds
- # 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
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement