GameServer Interface... Start geht, stop nicht

Bash, Shell, PHP, Python, Perl, CGI
teklab
Posts: 17
Joined: 2004-05-04 08:37

GameServer Interface... Start geht, stop nicht

Post by teklab »

Hi,

ich habe mir hier schon seit gestern alles mögliche über sudo und webinterface sachen rausgesucht und bei mir scheint irgend etwas nicht zu funzen.....

ich starte bzw stoppe oder restarte meinen server wie folgt:

passthru("sudo -u root /home/skripte/cs_server start");
passthru("sudo -u root /home/skripte/cs_server stop");
passthru("sudo -u root /home/skripte/cs_server restart");

nun ists so, bei start startet er den server, wie es auch sein sollte. doch bei stop macht er nichts und bei restart macht er auch nur den start befehl.

das komische ist aber sobald ich in der konsole bin und cs_server stop schreibe stopt er den server also ist das ordnung.

Was kann ich machen, damit bei dem user der screen beendet wird zur not würde es ja auch gehen alle prozesse zu killen oder? Wenn ja wie? Oder kann man einfach alle Screens schließen? Bin echt verzweifelt...

hier der Quelltext

Code: Select all

NAME=hlds-test 
CS_USER=root 
PATH=/bin:/usr/bin:/sbin:/usr/sbin 
DIR=/usr/apps/k-cs-test 
DAEMON=hlds_run 
PARAMS="-game cstrike +maxplayers 12 +map de_dust -port 5555" 
case "$1" in 
start) 
if [[ `su $CS_USER -c "screen -ls |grep $NAME"` ]] 
then 
echo "HLDS is already running!" 
else 
echo "Starting Counter-Strike dedicated server for test $NAME" 
su $CS_USER -c "cd $DIR; screen -m -d -S hlds-test ./$DAEMON $PARAMS" 
fi 
;; 
 
 
 
 
stop) 
if [[ `su $CS_USER -c "screen -ls |grep $NAME"` ]] 
then 
echo -n "Stopping Counter-Strike dedicated server for test " 
kill `ps aux | grep -v grep | grep -i $CS_USER | grep -i screen | grep -i $NAME | awk '{print $2}'` 
 echo " ... done." 
else 
echo "Coulnd't find a running $DESC" 
fi 
;; 



restart) 
if [[ `su $CS_USER -c "screen -ls |grep $NAME"` ]] 
then 
echo -n "Stopping $DESC: $NAME" 
kill `ps aux | grep -v grep | grep -i $CS_USER | grep -i screen | grep -i $NAME | awk '{print $2}'` 
echo " ... done." 
else 
echo "Coulnd't find a running $DESC" 
fi 
echo -n "Starting $DESC: " 
su $CS_USER -c "cd $DIR; screen -m -d -S hlds-test ./$DAEMON $PARAMS" 
echo " ... done." 
;; 
 
 
 
esac 
exit 0 
 
 

teklab
Posts: 17
Joined: 2004-05-04 08:37

Re: GameServer Interface... Start geht, stop nicht

Post by teklab »

Ok hab jetzt des Rätsels Lösung...

ich habe eine Datei zum Starten und eine zum Stoppen erstellt
und alles unnötige rausgenommen.

jetzt verpacke ich das ganze nur noch schön und baue einen
Gameswitch ein.

Das Webinterface sieht dann ungefähr wie hier aus.

http://www.teklab.de/Desktop.zip

Natürlich nicht Admin Login sonder Member Login ;)
auch die Module werden dann durch GameServer Icons ersetzt.

Wenn interesse besteht kann man sich ja bei mir melden.