PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Shoutcast Webinterface



BasterTWO
02.10.06, 06:27
Hallo,
ich habe einen Shoutcast Server auf meinem Linux Server aufgesetzt und würde diesen gerne per Webinterface an und abschalten können. Nun ist das Problem welche zwei Befehle nehme ich zum anschalten und zum abschalten.

Vieleicht habt ihr ja eine Idee mit welchen Befehlen man das tuhen soll.

BasterTWO

marce
02.10.06, 07:33
wie startest Du denn den Server manuell?
wie beendest Du denn den Server manuell?

... das wäre doch mal ein guter Ansatzpunkt...

BasterTWO
02.10.06, 13:24
Ich starte denn Server mit dem Startskript. Ok das habe ich auch jetzt schon im Webinterface aber das Beenden wird schwer. Denn ich schau mir die PID an und kille dann. Aber ich kann ja net immer die PID auslesen. Gibt es keinen Befehl wie kill Shoutcast oder so.

BasterTWO

PhilippWolf.com
02.10.06, 13:27
du könnest das Startscript verändern, welches in eine Datei die PID nummer einträgt, welches dann dein Stopscript ausliest und den prozess killt.

BasterTWO
02.10.06, 13:28
Hast du eine Idee wie das gehen soll.

BasterTWO

fragenhaber
02.10.06, 13:49
Probier mal folgenden Befehl aus:

kill `pidof shoutcast { print $2}`
Statt "shoutcast" setzt du dann den Namen des Prozesses ein. (Weiß jetzt nicht genau wie der bei Shoutcast lautet.)

BasterTWO
03.10.06, 20:39
Dieser Befehl geht net.

marce
03.10.06, 20:42
Aha.

*10Zeichen*

zyrusthc
03.10.06, 23:40
Man kann es auch so mit dem start-stop lösen... Ungetestet!

#!/bin/sh
PROGRAMM="/pfad/zur/startdatei -parameter"
NAME="BLABLA"

PIDFILE="/var/run/blabla.pid"

case "$1" in
start)
echo "Starte $NAME"
$PROGRAMM &
echo $! > $PIDFILE
;;

stop)
if test -f $PIDFILE; then
if ps aux | grep $(cat $PIDFILE) 1> /dev/null 2> /dev/null; then
echo "killing $NAME"
kill -9 $(cat $PIDFILE) 1> /dev/null 2> /dev/null
rm $PIDFILE
else
echo "Konnte laufenden Prozess $NAME mit PID $(cat $PIDFILE) nicht finden"
fi
;;

*)
echo "Usage: $0 Parameter eingeben {start|stop}"
exit 1
;;
esac

exit 0


Dann kanste halt mit php das ganze bequem ausführen:

$befehl="/pfad/zum/scriptvonoben start";
$output = shell_exec("sudo $befehl");
echo $output;

Und nicht vergessen die /etc/sudoers erst anzupassen sonst wird der Webserver mangels Rechten den Befehl nicht ausführen.

ala:
apache ALL=NOPASSWD: /pfad/zum/scriptvonoben


Viel Glück.

Greeez Oli

BasterTWO
06.10.06, 12:14
Ich finde aber die PID Datei nicht und weis auch nicht wodie Sein könnte.

Hat jemand eine Idee.

BasterTWO

zyrusthc
06.10.06, 12:26
Ich finde aber die PID Datei nicht und weis auch nicht wodie Sein könnte.

Hat jemand eine Idee.

BasterTWO

Wenn du meinen Vorschlag folgst wird das PID-File erstellt!


echo $! > $PIDFILE

BasterTWO
06.10.06, 12:47
Das heißt ich soll einfach das Skrip kopieren oder was ????

BasterTWO
Nehm mich mal in MSN auf habe dich hinzugefügt habe.

bastertwo@hotmail.de

zyrusthc
06.10.06, 12:56
Das heißt ich soll einfach das Skrip kopieren oder was ????

BasterTWO
Nehm mich mal in MSN auf habe dich hinzugefügt habe.

bastertwo@hotmail.de
Script kopieren in eine Datei schreiben ausführbar machen und anpassen, fertig.

PS: MSN kannste lassen!


Greeez Oli

BasterTWO
06.10.06, 12:59
Hi,
aber das funkt net. Ich würde mich freuen wenn ich mich mit dir kurz Unterhalten
komm auf diesen TS 62.75.202.233:6043.

BasterTWO
PS: Heiß Jarus Dort.

BasterTWO
06.10.06, 13:09
Ich habe mal alles auf mich eingestellt.

So sieht meine Datei aus:

#!/bin/sh
PROGRAMM="/home/christoph/shoutcast/sc_serv"
NAME="shoutcast"

PIDFILE="/var/run/shoutcast.pid"

case "$1" in
start)
echo "Starte $NAME"
$PROGRAMM &
echo $! > $PIDFILE
;;

stop)
if test -f $PIDFILE; then
if ps aux | grep $(cat $PIDFILE) 1> /dev/null 2> /dev/null; then
echo "killing $NAME"
kill -9 $(cat $PIDFILE) 1> /dev/null 2> /dev/null
rm $PIDFILE
else
echo "Konnte laufenden Prozess $NAME mit PID $(cat $PIDFILE) nicht finden"
fi
;;

*)
echo "Usage: $0 Parameter eingeben {start|stop}"
exit 1
;;
esac

exit 0

Aber ich bekomme dieses Fehlermeldung:

./shoutcast.sh: line 23: syntax error near unexpected token `;;'
./shoutcast.sh: line 23: `;;'


Kann jemand danet helfen.

BasterTWO

zyrusthc
06.10.06, 14:42
Irgentwas stimmt in Zeile:23 in dem Script nicht. Ist eventuell hinter ";;" irgentein Leerzeichen?