Startscript für BF2CC

rocketwulf

New Member
Guten Morgen alle zusammen,

ich habe seid Gestern ein Problem.

ich verwende dieses Startscript:

Code:
#! /bin/bash
######################################################### 
# STARTSCRIPT FUER Battlefield Clan SERVER # 
######################################################### 
# Benutzung auf eigene Gefahr!!!!!!!!!!! # 
# SCREEN muss auf dem Server installiert sein! # 
######################################################### 
# Vars: # 
# G_USER Username # 
# NAME Screen-Name # 
# DESC Server-Beschreibung # 
# PARAMS Start-Parameter # 
# DIR HLDS Directory (absolut) # 
# SCRIPT Serverstart-Script # 
# DAEMON Daemon # 
######################################################### 
# OPTIONS: (start|stop|restart|status) # 
######################################################### 

################## User ################################ 
# Username unter dem der Server laufen soll 
# NICHT als root laufen lassen 
G_USER=bf2clan
################## Vars ################################# 
# Screen NAME 
# Attach Screen : # screen -r NAME 
# Detach Screen : # [CTRL]+[A]; [D] 
# Don't press [CTRL]+[C] it will terminate screen 
NAME=bf2id1
################## Server Description ################### 
# Single Word DESC=myserver 
# Multiple Words DESC="This is my Server" 
DESC="Silentforces BF2 CLAN Server" 
################## Directory ############################ 
# Pfad zum cod2-Directory (absolute) 
DIR=/home/bf2clan/bf2/
######################################################## 
#### NICHTS UNTER DIESER ZEILE VERNDERN ! ! ! #### 
######################################################## 

case "$1" in 
start) 
if [[ `su $G_USER -c "screen -ls | grep $NAME"` ]] 
then 
echo "$DESC laeuft bereits!" 
else 
echo "Starte $DESC " 
su $G_USER -c "cd $DIR; screen -d -m -S $NAME mono bf2ccd.exe" 
fi 
;; 

stop) 
if [[ `su $G_USER -c "screen -ls | grep $NAME"` ]] 
then 
echo -n "Stoppe $DESC " 
kill `ps aux | grep -i screen | grep -i $NAME | awk '{print $2}'` 
echo " ... done." 
else 
echo "Kein laufenden $DESC gefunden!" 
fi 
;; 

restart) 
if [[ `su $G_USER -c "screen -ls | grep $NAME"` ]] 
then 
echo -n "Stoppe $DESC " 
kill `ps aux | grep -i screen | grep -i $NAME | awk '{print $2}'` 
echo " ... done." 
else 
echo "Kein laufenden $DESC gefunden!" 
fi 

echo -n "Starte $DESC" 
su $G_USER -c "cd $DIR; screen -d -m -S $NAME mono bf2ccd.exe" 
echo " ... done." 
;; 

status) 
if [ `whoami` = root ]
then
su - $G_USER -c "screen -ls" | grep [.]$NAME[[:space:]] > /dev/null
else
screen -ls | grep [.]$NAME[[:space:]] > /dev/null
fi
CHECK=$?
[ $CHECK -eq 0 ] && echo "$DESC is UP" || echo "$DESC is DOWN" 
;; 
*) 

echo "Benutze: $0 {start|stop|restart|status}" 
exit 1 
;; 
esac 

exit 0

Status und Stoppen des Servers geht hierüber einwandfrei und bis gestern ging auch das starten.

Leider, geht das jezt nicht mehr...

Ich hab versucht dahinterzukommen woran das liegt, aber leider kann ich das nicht nachvollziehen.

Meiner Meinung nach liegt der Fehler hier:

Code:
su $G_USER -c "cd $DIR; screen -d -m -S $NAME mono bf2ccd.exe"

weil so eingegeben bringt der Befehl auch in putty keine Aktion

geb ich alles braf nacheinander so in den Server:
Code:
su $G_USER 
cd $DIR
screen -d -m -S $NAME mono bf2ccd.exe

started der Server, allerdings nur wenn ichs über putty mache.

Ich verzweifle noch-.-

Fals das hier nun das Falsche Forum ist bitte verschieben oder mich Informieren -.- bin mir da nämlich nicht ganz sicher :P

Serverdaten:
System hostname Debian-40-etch-64-LAMP
Operating system Debian Linux 4.0
Webmin version 1.380

MFG

Rock@wulf
 
Back
Top