add init scripts
add mode to write average volume instead of max add pid file handle sighup for log rotation add daemon mode
This commit is contained in:
parent
26c3dda8ea
commit
564a8942d7
|
@ -0,0 +1,76 @@
|
|||
#! /bin/bash
|
||||
|
||||
### BEGIN INIT INFO
|
||||
# Provides: howard
|
||||
# Required-Start: $local_fs $network
|
||||
# Required-Stop: $local_fs
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: howard sound monitoring service
|
||||
# Description: Run howard sound monitoring service
|
||||
### END INIT INFO
|
||||
|
||||
BINARY=/usr/local/bin/howard
|
||||
CONFIG=/etc/howard.conf
|
||||
PIDFILE="/var/run/howard.pid"
|
||||
|
||||
|
||||
rv=0
|
||||
# Carry out specific functions when asked to by the system
|
||||
case "$1" in
|
||||
start)
|
||||
if [[ ! -e $CONFIG ]]; then
|
||||
echo "Config file '$CONFIG' is missing"
|
||||
exit 1
|
||||
fi
|
||||
echo -n "Starting howard... "
|
||||
OPTS=$(cat $CONFIG | tr '\n' ' ')
|
||||
$BINARY $OPTS
|
||||
rv=$?
|
||||
[[ $rv -eq 0 ]] && echo "ok" || echo "failed"
|
||||
;;
|
||||
stop)
|
||||
echo -n "Stopping howard... "
|
||||
if [[ -e $PIDFILE ]]; then
|
||||
kill $(cat "$PIDFILE")
|
||||
rv=$?
|
||||
else
|
||||
pkill howard
|
||||
rv=$?
|
||||
fi
|
||||
[[ $rv -eq 0 ]] && echo "ok" || echo "failed"
|
||||
;;
|
||||
status)
|
||||
if [[ -e $PIDFILE ]]; then
|
||||
pid=$(cat "$PIDFILE")
|
||||
if ps -p $pid >/dev/null 2>&1; then
|
||||
echo "howard is running (PID $pid)"
|
||||
rv=0
|
||||
else
|
||||
realpid=$(pgrep howard)
|
||||
if [[ $? -eq 0 ]]; then
|
||||
echo "howard is running (PID $realpid) but pidfile has pid $pid"
|
||||
rv=0
|
||||
else
|
||||
echo "howard pidfile exists but pid $pid isn't running."
|
||||
rv=1
|
||||
fi
|
||||
fi
|
||||
else
|
||||
realpid=$(pgrep -f $BINARY)
|
||||
if [[ $? -eq 0 ]]; then
|
||||
echo "howard is running (PID $realpid) but pidfile is missing."
|
||||
rv=0
|
||||
else
|
||||
echo "howard is not running."
|
||||
rv=1
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Usage: /etc/init.d/howard {start|stop|status}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit $rv
|
Loading…
Reference in New Issue