Hallo,

Dies ist mein erster Versuch eines Script's um den Softsqueeze-Player
als Daemon unter (K)ubuntu 7.10 laufen zu lasen. Es scheint zu
funktionieren ich habe jedoch noch Probleme beim selektieren einer
neuen Quelle (Der Player hängt sich auf). Dies scheint jedoch am
aktuellen Server (SqueezeCenter 7.0) oder dem dazugehörigen Player zu
liegen, den dies tritt auch beim normalen Start des Player's via
WebStart auf. Falls jemand ein Linux-Crack ist und noch Fehler im
Script findet, bitte Melden den meine Linux "knofhof" ist begrenzt. 

Gruss

Chris

-------------------------------------------------

#!/bin/sh
### BEGIN INIT INFO
#
# $Id$
#
# Short-Description:    softsqueeze initscript for SoftSqueeze.jar
# Description:          This file should be placed in /etc/init.d.
#
# Author: Chris Gross <[EMAIL PROTECTED]>
#
### END INIT INFO

set -e

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DESC="SoftSqueeze Audio Player"
NAME=softsqueeze 
DAEMON="/usr/bin/java"
DAEMON_ARG="-server -Dslimserver=localhost -Dskins=headless -jar
SoftSqueeze.jar"
CDDIR="/usr/share/squeezecenter/HTML/EN/html/softsqueeze"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
SCUSER=[user-id eintragen]

# Define LSB log_* functions.
# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
. /lib/lsb/init-functions

# Exit if the package is not installed
[ -x "$DAEMON" ] || exit 0

# Read config file if it is present.
if [ -r /etc/default/$NAME ]
then
        . /etc/default/$NAME
fi

#
#       Function that starts the daemon/service.
#
do_start() {
        # Return
        #   0 if daemon has been started
        #   1 if daemon was already running
        #   2 if daemon could not be started
        start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON
--test > /dev/null \
                || return 1
        start-stop-daemon --start --quiet \
                --chuid $SCUSER \
                --pidfile $PIDFILE \
                --make-pidfile \
                --background \
                --chdir $CDDIR \
                --exec $DAEMON --\
                $DAEMON_ARG \
                || return 2
}

#       Function that stops the daemon/service.
#
do_stop() {
        # Return
        #   0 if daemon has been stopped
        #   1 if daemon was already stopped
        #   2 if daemon could not be stopped
        #   other if a failure occurred
        start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile
$PIDFILE --name java
        RETVAL="$?"
        [ "$RETVAL" = 2 ] && return 2
        # Wait for children to finish too if this is a daemon that forks
        # and if the daemon is only ever run from this initscript.
        # If the above conditions are not satisfied then add some other code
        # that waits for the process to drop all resources that could be
        # needed by services started subsequently.  A last resort is to
        # sleep for some time.
        start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec
$DAEMON
        [ "$?" = 2 ] && return 2
        # Many daemons don't delete their pidfiles when they exit.
        rm -f $PIDFILE
        return "$RETVAL"
}

case "$1" in
start)
        [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
        do_start
        case "$?" in
                0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
                2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
        esac
        ;;
stop)
        [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
        do_stop
        case "$?" in
                0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
                2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
        esac
        ;;
restart|force-reload)
        #
        # If the "reload" option is implemented then remove the
        # 'force-reload' alias
        #
        log_daemon_msg "Restarting $DESC" "$NAME"
        do_stop
        case "$?" in
          0|1)
                do_start
                case "$?" in
                        0) log_end_msg 0 ;;
                        1) log_end_msg 1 ;; # Old process is still running
                        *) log_end_msg 1 ;; # Failed to start
                esac
                ;;
          *)
                # Failed to stop
                log_end_msg 1
                ;;
        esac
        ;;
*)
        echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
        exit 3
        ;;
esac

exit 0

-----------------------------------------------------------------


-- 
cgHome
------------------------------------------------------------------------
cgHome's Profile: http://forums.slimdevices.com/member.php?userid=15385
View this thread: http://forums.slimdevices.com/showthread.php?t=43163

_______________________________________________
slimserver-de mailing list
slimserver-de@lists.slimdevices.com
http://lists.slimdevices.com/lists/listinfo/slimserver-de

Antwort per Email an