#!/bin/bash ### BEGIN INIT INFO # Provides: airtime-liquidsoap # Required-Start: $local_fs $remote_fs $network $syslog $all # Required-Stop: $local_fs $remote_fs $network $syslog # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: Manage airtime-liquidsoap daemon ### END INIT INFO USERID=www-data GROUPID=www-data NAME=airtime-liquidsoap DAEMON=/usr/bin/$NAME PIDFILE=/var/run/$NAME.pid # Exit if the package is not installed [ -x "$DAEMON" ] || exit 0 # Read configuration variable file if it is present [ -r /etc/default/$NAME ] && . /etc/default/$NAME # Load the VERBOSE setting and other rcS variables . /lib/init/vars.sh # Define LSB log_* functions. # Depend on lsb-base (>= 3.2-14) to ensure that this file is present # and status_of_proc is working. . /lib/lsb/init-functions start () { start-stop-daemon --start --background --quiet --chuid $USERID:$GROUPID \ --make-pidfile --pidfile $PIDFILE --startas $DAEMON } stop () { # Send TERM after 5 seconds, wait at most 30 seconds. start-stop-daemon --stop --oknodo --retry TERM/5/0/30 --quiet --pidfile $PIDFILE rm -f $PIDFILE } case "${1:-''}" in 'start') # start commands here echo -n "Starting $NAME: " start echo "Done." ;; 'stop') # stop commands here echo -n "Stopping $NAME: " stop echo "Done." ;; 'restart') # restart commands here echo -n "Restarting $NAME: " stop start echo "Done." ;; 'force-reload') # reload commands here echo -n "Reloading $NAME: " stop start echo "Done." ;; 'status') status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $? ;; *) # no parameter specified echo "Usage: $SELF start|stop|restart|status" exit 1 ;; esac