All pastes #2016842 Raw Edit

jack daemon Startup Script

public shellscript v1 · immutable
#2016842 ·published 2010-12-11 21:18 UTC
rendered paste body
#!/bin/sh## Jackd init script#### BEGIN INIT INFO# Provides:          jackd# Required-Start:    $local_fs $remote_fs# Required-Stop:# Default-Start:     2 3 4 5# Default-Stop:      0 1 6# Short-Description: init-Script for the jack daemon### END INIT INFO#set -e# DefaultsPATH=/sbin:/bin:/usr/sbin:/usr/binDAEMON=/usr/bin/jackdUSER=rivendellOPTIONS=""PIDFILE="/var/run/jackd.pid"test -f /etc/default/jackd || exit 0. /etc/default/jackdOPTIONS="$OPTIONS"if [ ! "x$START_DAEMON" = "xyes" -a ! "$1" = "stop" ]; then	echo "Edit /etc/default/jackd to start jackd"	exit 0fitest -f $DAEMON || exit 0. /lib/lsb/init-functionscase "$1" in	start)		if test -e $PIDFILE ; then			pid=`cat $PIDFILE | sed -e 's/\s.*//'|head -n1`			PIDDIR=/proc/$pid		    if [ -d ${PIDDIR} -a  "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then				log_failure_msg "jackd already started; not starting."				exit 0			else				log_warning_msg "Removing stale PID file $PIDFILE."				rm -f $PIDFILE			fi		fi	        log_begin_msg "Starting jackd audio server:" "jackd"		if start-stop-daemon -m -b -S -o -q -p $PIDFILE -x $DAEMON -u $USER -a /bin/su -- - $USER -c "$DAEMON $OPTIONS"; then			log_end_msg 0		else			log_end_msg 1			exit 1		fi		;;	stop)		if ! test -e $PIDFILE ; then			log_failure_msg "Pidfile not found! Is jackd running?"			exit 0		fi	        log_begin_msg "Stopping jackd audio server:" "jackd"		killall -9 /usr/bin/jackd > /dev/null 2>&1 || true		if start-stop-daemon -m -K -o -q -p $PIDFILE -x /bin/su -u $USER; then                        rm -f $PIDFILE			log_end_msg 0		else			log_end_msg 1			exit 1		fi		;;	force-reload|restart)	        log_begin_msg "Restarting jackd audio server:" "jackd"		if ! start-stop-daemon -m -K -o -q -p $PIDFILE -x $DAEMON -u $USER; then			log_end_msg 1			exit 1		fi		sleep 1                rm -f $PIDFILE || true		if start-stop-daemon -m -b -S -o -q -p $PIDFILE -x $DAEMON -u $USER -c $USER -a $DAEMON -- $OPTIONS; then			log_end_msg 0		else			log_end_msg 1			exit 1		fi		;;	try-restart)		if test -e $PIDFILE ; then			pid=`cat $PIDFILE | sed -e 's/\s.*//'|head -n1`			PIDDIR=/proc/$pid			if [ -d ${PIDDIR} -a  "$(readlink -f ${PIDDIR}/exe)" = "${DAEMON}" ]; then				$0 restart				exit 0			fi		fi		test -f /etc/rc`/sbin/runlevel | cut -d' ' -f2`.d/S*jackd* && $0 start		;;	awaken)	        log_begin_msg "Awakening jackd audio server:" "jackd"		if [ -s $PIDFILE ]; then			start-stop-daemon -K -s 10 -q -p $PIDFILE -x $DAEMON			log_end_msg 0			exit 0		else			log_end_msg 1			exit 1		fi		;;	*)		log_warning_msg "Usage: /etc/init.d/jackd {start|stop|restart|force-reload|awaken|debug-run}"		log_warning_msg "  start - starts system-wide jackd service"		log_warning_msg "  stop  - stops system-wide jackd service"		log_warning_msg "  restart, force-reload - starts a new system-wide jackd service"		log_warning_msg "  awaken - tell system-wide jackd to start a poll cycle immediately"		log_warning_msg "  debug-run [strace [strace options...]] - start a debug run of the"		log_warning_msg "    system-wide jackd service, optionally running it under strace"		exit 1		;;esacexit 0