core/cdemu-daemon/cdemud.rc
2012-09-04 11:16:39 +00:00

58 lines
1015 B
Bash

#!/bin/bash
. /etc/rc.conf
. /etc/rc.d/functions
. /etc/conf.d/cdemud
case "$1" in
start)
stat_busy "Loading vhba and loop modules"
modprobe loop
modprobe vhba
if [ $? -ne 0 ]; then
stat_fail
else
stat_done
fi
stat_busy "Waiting for $CTL_DEVICE"
i=0
until [ -c $CTL_DEVICE -o $i -ge 10 ]; do
i=`expr $i + 1`
sleep 1
done
if [ -c $CTL_DEVICE ]; then
stat_done
else
stat_fail
fi
stat_busy "Starting cdemud"
cdemud -n ${NUM_DRIVES} -c ${CTL_DEVICE} -a ${AUDIO_DRIVER} -b ${BUS} -l ${LOG_FILE} &
if [ $? -ne 0 ]; then
stat_fail
else
add_daemon cdemud
stat_done
fi
;;
stop)
stat_busy "Stopping cdemud"
kill -9 `pidof cdemud` &>/dev/null && sleep 1 && rmmod vhba
if [ $? -ne 0 ]; then
stat_fail
else
rm_daemon cdemud
stat_done
fi
;;
restart)
$0 stop
sleep 1
$0 start
;;
*)
echo "usage: $0 {start|stop|restart}"
esac