ubuntuusers.de

pyload ubuntu autostart script funktioniert nicht

Status: Ungelöst | Ubuntu-Version: Ubuntu 12.10 (Quantal Quetzal)
Antworten |

MySt3rY

Anmeldungsdatum:
4. April 2010

Beiträge: Zähle...

Hallo,

ich wollte wie unter http://forum.ubuntuusers.de/topic/pyload-automatisch-starten/ beschrieben, ein script installieren um pyload automatisch starten zu lassen.

script erstellt, ausführbar gemacht, trotzdem lässt es sich nicht manuell starten...folgende Fehlermeldung kommt:

sudo /etc/init.d/pyload
/bin/sh: 0: Illegal option -

die selbe Fehlermeldung kommt jetzt auch wenn ich versuche, pyload mit service pyload start zu starten...

hier das script:

#!/bin/sh -e
### BEGIN INIT INFO
# Provides:          pyload
# Required-Start:    $local_fs $remote_fs $network
# Required-Stop:     $local_fs $remote_fs $network
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start or stop pyload.
### END INIT INFO

NAME=pyload
DAEMON=/usr/bin/pyLoadCore
USER=lol
STOP_TIMEOUT=3
PIDFILE=/var/run/$NAME.pid

export PATH="${PATH:+$PATH:}/sbin"

[ -x $DAEMON ] || exit 0

[ -e /etc/default/$NAME ] && . /etc/default/$NAME

. /lib/lsb/init-functions

start_daemon () {
    start-stop-daemon --background --start --pidfile $PIDFILE --chuid $USER --exec $DAEMON -- $OPTIONS | cut -d" " -f 3 > $PIDFILE
}

stop_daemon () {
    start-stop-daemon --stop --retry="TERM/30/KILL/5" --pidfile "$PIDFILE" --user "$USER" --chuid "$USER"
}

case "$1" in
    start)
        log_daemon_msg "Starting pyLoadCore" "$NAME"
        start_daemon
        log_end_msg 0
        ;;
    stop)
        log_daemon_msg "Stopping pyLoadCore" "$NAME"
        stop_daemon
        log_end_msg 0
        ;;
    restart)
        log_daemon_msg "Restarting pyLoadCore" "$NAME"
        stop_daemon
        start_daemon
        log_end_msg 0
        ;;
    *)
        echo "Usage: /etc/init.d/$NAME {start|stop|restart}"
        exit 2
        ;;
esac

exit 0

Ich benutze zurzeit Ubuntu 12.10 - XBMCbuntu (GNU/Linux 3.5.0-22-generic i686)

MPW

Anmeldungsdatum:
4. Januar 2009

Beiträge: 3731

Hallo,

dein Benutzer heißt lol, hast du das angepasst?

Kannst du pyload denn so start?

pyLoadCore

Bei mir steht nämlich in der DAEMON-Zeile noch ein .py hinter pyLoadCore.

Auch hilfreich wäre:

which pyloadCore

Grüße MPW

MySt3rY

(Themenstarter)

Anmeldungsdatum:
4. April 2010

Beiträge: 16

Hallo, Benutzer hab ich angepasst. Heisst jetzt sowie mein Linux user und mein pyload benutzer. Bisher war das noch kein Problem. mit pyLoadCore kann pyload starten, allerdings verbleibt pyload dann im Terminal (greif per SSH darauf zu) which pyloadCore gibt folgendes aus:

GNU bash, version 4.2.37(1)-release (i686-pc-linux-gnu)

MPW

Anmeldungsdatum:
4. Januar 2009

Beiträge: 3731

Der letzte Unterschied ist wie gesagt das .py in der DAEMON-Variable. Das mal probeweise geändert?

which pyLoadCore

müsste eigentlich den Pfad ausgeben, unter dem es installiert ist...etwas seltsam deine Ausgabe da.

Grüße MPW

MySt3rY

(Themenstarter)

Anmeldungsdatum:
4. April 2010

Beiträge: 16

also es funktionert, wenn ich pyload mit dpkg -i pyload-v0.4.9-all.deb neuinstalliere wieder...

danach wird aber auch die /etc/init.d/pyload geändert, in den originalzustand zurückgesetzt, mein pyload geht dann wieder... hier das orginal script:

#!/bin/sh 

### BEGIN INIT INFO
# Provides:          pyload
# Required-Start:    $syslog $local_fs $network $remote_fs
# Required-Stop:     $syslog $local_fs $network $remote_fs
# Should-Start:      $remote_fs $named
# Should-Stop:       $remote_fs $named
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Starts pyload daemon
# Description:       This script runs the pyload service
### END INIT INFO

# Starts and stops the pyload daemon.

PATH=/bin:/usr/bin:/sbin:/usr/sbin
DAEMON=/usr/bin/pyLoadCore
PIDFILE="~/.pyload/pyload.pid"

. /lib/lsb/init-functions

start() {
    log_daemon_msg "Starting pyLoad server"

    $DAEMON --daemon
    
    if [ $? != 0 ]; then
        log_end_msg 1
        exit 1
    else
        log_end_msg 0
    fi
}

stop() {
    log_daemon_msg "Stoping pyLoad server"

    $DAEMON -q
    
    if [ $? != 0 ]; then
        log_end_msg 1
#        exit 1
    else
        log_end_msg 0
    fi
}

case "$1" in
    start)
	    start
	;;

    stop)
	    stop
	;;

    force-reload)
	   stop
	   sleep 5
	   start
        ;;

    restart)
	    stop
	    sleep 2
	    start
	;;

    *)
	echo "Usage: $0 {start|stop|restart|force-reload}"
	exit 1
	;;
esac

exit 0

which pyload ergibt nach der neuinstallation:

 which pyLoadCore
/usr/bin/pyLoadCore

MySt3rY

(Themenstarter)

Anmeldungsdatum:
4. April 2010

Beiträge: 16

fehler gefunden, die &pid file im modifizierten script war nicht richtig ...

danke für deine hilfe ☺

Edit: Trotz der PID Korrektur funktioniert das script nicht ....

Antworten |