blob: cd0bf9872f2e1947662382e7477b08f17bc0ec27 [file] [log] [blame]
#!/bin/sh
#
# chkconfig: 35 20 80
# description: Distributed Input Output Daemon
#
# Get function from functions library
. /etc/init.d/functions
BASE=diod
PIDFILE=/var/run/$BASE.pid
PID=`test -f $PIDFILE && cat $PIDFILE`
DIOD_BIN=/usr/sbin/$BASE
DIOD_CONF=/etc/$BASE.conf
DIOD_OPTS="-c $DIOD_CONF"
DIOD="$DIOD_BIN $DIOD_OPTS"
RETVAL=0
# Start the service $BASE
start()
{
# Force creation of the log directory even on a tmpfs /var/log.
mkdir -p /var/log/diod
start-stop-daemon --stop --test --quiet --pidfile $PIDFILE
status=$?
if [ $status -eq 0 ]; then
echo "diod service is already running with pid $PID"
exit 1
else
echo -n "Starting $BASE:"
start-stop-daemon --start --pidfile $PIDFILE \
--exec $DIOD_BIN -- $DIOD_OPTS
RETVAL=$?
echo
[ $RETVAL -ne 0 ] && exit $RETVAL
fi
}
# Stop the service $BASE
stop()
{
echo -n "Stopping $BASE:"
start-stop-daemon --stop --test --quiet --pidfile $PIDFILE
status=$?
if [ $status -eq 0 ]; then
start-stop-daemon --stop --quiet --pidfile $PIDFILE
[ -w $PIDFILE ] && rm -f $PIDFILE
else
start-stop-daemon --stop --quiet --name $BASE
fi
}
### service arguments ###
case $1 in
start)
start
;;
stop)
stop
;;
status)
status $BASE
;;
restart | force-reload)
$0 stop
$0 start
;;
*)
echo "Usage: $0 {start|stop|status|restart}."
exit 1
esac
exit 0