Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- $ cat /etc/init.d/squeezeboxserver
- #!/bin/sh
- #
- # $Id$
- #
- # squeezeboxserver initscript for squeezebox.pl
- # This file should be placed in /etc/init.d.
- #
- # Original Author: Mattias Holmlund
- #
- # Updated By: Dan Sully
- #
- ### BEGIN INIT INFO
- # Provides: squeezeboxserver
- # Required-Start: $all
- # Required-Stop: $all
- # Should-Start: $all
- # Should-Stop: $all
- # Default-Start: 2 3 4 5
- # Default-Stop: 0 1 6
- # Short-Description: Startup script for the SqueezeBox Music Server
- # Description: SqueezeBox Server powers the Squeezebox, Transporter and SLIMP3 network music \
- # players and is the best software to stream your music to any software MP3 \
- # player. It supports MP3, AAC, WMA, FLAC, Ogg Vorbis, WAV and more!
- ### END INIT INFO
- #
- set -e
- PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
- DESC="Squeezebox Server"
- NAME=squeezeboxserver
- DAEMON=/usr/sbin/$NAME
- DAEMON_SAFE=/usr/sbin/${NAME}_safe
- PIDFILE=/var/run/$NAME.pid
- SCRIPTNAME=/etc/init.d/$NAME
- SLIMUSER=$NAME
- PREFSDIR=/var/lib/$NAME/prefs
- LOGDIR=/var/log/$NAME/
- CACHEDIR=/var/lib/$NAME/cache
- CHARSET=utf8
- SLIMOPTIONS=
- # Read config file if it is present.
- if [ -r /etc/default/$NAME ]
- then
- . /etc/default/$NAME
- fi
- #
- # Function that starts the daemon/service.
- #
- d_start() {
- # Use squeezeboxserver_safe to restart the daemon when
- # it dies. This must be done to handle mysql restarts.
- start-stop-daemon --start --quiet \
- --chuid $SLIMUSER \
- --pidfile $PIDFILE \
- --exec $DAEMON_SAFE \
- --background \
- --make-pidfile \
- -- \
- $DAEMON \
- --prefsdir $PREFSDIR \
- --logdir $LOGDIR \
- --cachedir $CACHEDIR \
- --charset=$CHARSET \
- $SLIMOPTIONS
- }
- d_start_direct() {
- start-stop-daemon --start --quiet \
- --chuid $SLIMUSER \
- --pidfile $PIDFILE \
- --exec $DAEMON \
- -- \
- --pidfile $PIDFILE \
- --daemon \
- --prefsdir $PREFSDIR \
- --logdir $LOGDIR \
- --cachedir $CACHEDIR \
- --charset=$CHARSET \
- $SLIMOPTIONS
- }
- # Function that stops the daemon/service.
- #
- d_stop() {
- ## This is a bug in the start-stop-daemon that checks the PID name from the /proc/PID/stat filesystem...
- ## Unfortunately this cuts-off the name of the daemon because its longer now, and then it doesnt get
- ## caught by the start-stop-daemon. The daemon actually reports it as squeezeboxserve instead of
- ## squeezeboxserver_safe.
- start-stop-daemon --oknodo --stop --pidfile $PIDFILE --retry=TERM/30/KILL/5
- }
- #
- # Function that sends a SIGHUP to the daemon/service.
- #
- d_reload() {
- start-stop-daemon --stop --quiet --pidfile $PIDFILE --signal 1
- }
- case "$1" in
- start)
- echo -n "Making sure that $DESC is not running first: "
- d_stop
- echo -n "Starting $DESC"
- d_start
- echo "."
- ;;
- stop)
- echo -n "Stopping $DESC"
- d_stop
- echo "."
- ;;
- restart|force-reload)
- #
- # If the "reload" option is implemented, move the "force-reload"
- # option to the "reload" entry above. If not, "force-reload" is
- # just the same as "restart".
- #
- echo -n "Restarting $NAME"
- d_stop
- d_start
- echo "."
- ;;
- *)
- # echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2
- echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
- exit 1
- ;;
- esac
- exit 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement