Skip to content

Instantly share code, notes, and snippets.

@dynax60
Created September 1, 2010 05:06
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dynax60/560251 to your computer and use it in GitHub Desktop.
Save dynax60/560251 to your computer and use it in GitHub Desktop.
Linux startup script for Mojo daemon_prefork app
#!/bin/bash
#
# Init file for Pinger server daemon
#
# chkconfig: 2345 55 25
# description: Pinger server daemon
#
# processname: pinger
# pidfile: /var/run/pinger.pid
# source function library
. /etc/rc.d/init.d/functions
# pull in sysconfig settings
[ -f /etc/sysconfig/pinger ] && . /etc/sysconfig/pinger
RETVAL=0
prog="pinger"
PINGER=/usr/local/app/pinger/pinger.pl
PID_FILE=/var/run/pinger.pid
export MOJO_MODE=production
export MOJO_TMPDIR=/usr/local/app/pinger/tmp
runlevel=$(set -- $(runlevel); eval "echo \$$#" )
start()
{
if [ -f ${PID_FILE} ]; then
if kill -0 `head ${PID_FILE} 2>/dev/null`; then
failure $"$prog start"
echo
return 1
fi
rm -f ${PID_FILE}
fi
echo -n $"Starting $prog: "
$PINGER daemon_prefork --daemonize --pid $PID_FILE $OPTIONS
RETVAL=$?
[ $RETVAL -ne 0 ] && failure $"$prog startup"
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog && success $"$prog startup"
echo
return $RETVAL
}
stop()
{
echo -n $"Stopping $prog: "
if [ -f ${PID_FILE} ]; then
kill -TERM `head ${PID_FILE} 2>/dev/null`
RETVAL=$?
[ $RETVAL -ne 0 ] && failure $"$prog stop"
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog && success $"$prog stop"
rm -f $PID_FILE
echo
return $RETVAL
fi
failure $"$prog stop"
echo
return 1
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
stop
start
;;
status)
status -p $PID_FILE $prog
RETVAL=$?
;;
*)
echo $"Usage: $0 {start|stop|restart|status}"
RETVAL=1
esac
exit $RETVAL
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment