Hallo hallo, mein Start-Stop-script hat seinen Dienst eingestellt ...
Starten macht er
"Re-Starten" auch, nur stoppen will er nicht, sprich beim Restart haut er einfach ne neue Instanz rein, er killt den Screen nicht, weil er ihn "angeblich" nicht findet ...
"Manuell" kommt das ...
Das wird das Prob sein ... ich versteh jetzt als "laie" leider nicht, was daran falsch sein soll ...
Den "Error" spuckt er mir so aus :
51 kann ja schlecht die Zeile sein, weil die ist leer und spätestens jetzt bin ich mit meinem Latein am ende =/
Code
#! /bin/sh
NAME="Warserver"
DESC="Warserver"
PARAMS="-game cstrike -ip xxxxxxxxxx. -port 27015 +maxplayers 12 +map
de_dust2 -autoupdate"
DIR=/home/hlds/warserver/css/
SCRIPT=srcds_run
DAEMON=$DIR/$SCRIPT
case "$1" in
start)
echo "Starte $DESC: $NAME"
cd $DIR
screen -d -m -S $NAME $DAEMON $PARAMS
;;
stop)
if [[ `screen -ls |grep $NAME` ]]
then
echo -n "Stoppe $DESC: $NAME"
kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
echo " ... Server gestoppt."
else
echo "Konnte keinen laufenden -- $DESC -- finden"
fi
;;
restart)
if [[ `screen -ls |grep $NAME` ]]
then
then
echo -n "Stoppe $DESC: $NAME"
kill `screen -ls |grep $NAME |awk -F . '{print $1}'|awk '{print $1}'`
echo " ... Server gestoppt ... Restart wird ausgeführt"
else
echo "Konnte keinen laufenden -- $DESC -- finden ... Kommando Start wird ausgeführt"
fi
sleep 2
echo -n "Starte $DESC: $NAME"
cd $DIR
screen -m -d -S $NAME $DAEMON $PARAMS
echo " ... Server gestartet."
;;
*)
echo "Usage: $0 Parameter eingeben {start|stop|restart}"
exit 1
;;
esac
exit 0
Alles anzeigen