Woddi123
Hallo,
ich habe folgendes Problem. ich habe mir einen Root server gemietet und da laufen zwei gameserver drauf. nur ist es so das ich gerne nach einem Neustart die zwei server zum laufen bringen will ohne das ich sie manuell starte. Wie bekomme ich sowas hin? Ich habe folgendes startscript, mit dem ich manuell alles starte und zwar so :
#! /bin/sh
#########################################################
# THIS FILE IS FOR STARTING AN Call of Duty 1.2 SERVER #
#########################################################
# Use at your Own Risk !!!!!!!!!!! #
# You need screen installed on your server #
#########################################################
# Vars: #
# G_USER Username #
# NAME The Screen Name #
# DESC Server Desciption #
# 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=cod2pub
################## Vars #################################
# Screen NAME
# Attach Screen : # screen -r NAME
# Detach Screen : # [CTRL]+[A]; [D]
# Don't press [CTRL]+[C] it will terminate screen
NAME=cod2
################## Server Description ###################
# Single Word DESC=myserver
# Multiple Words DESC="This is my Server"
DESC="Call of Duty 2 eXtrem Mod Server"
################## Parameter ############################
# CAN USE: +servercfgfile server.cfg OR +exec server.cfg
PARAMS="+exec server.cfg"
################## Directory ############################
# Your Path to cod Directory (absolute)
DIR=/home/gameserver/public
################## DAEMON ##############################
# You place your startscript here, normally hlds_run
SCRIPT=cod2_lnxded
########################################################
#### DONT CHANGE ANYTHINK BELOW THIS LINE ! ! ! ####
########################################################
DAEMON=$DIR/$SCRIPT
case "$1" in
start)
if [[ `su $G_USER -c "screen -ls | grep $NAME"` ]]
then
echo "$DESC läuft bereits!"
else
echo "Starte $DESC "
su $G_USER -c "cd $DIR; screen -d -m -S $NAME $DAEMON $PARAMS"
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 $DAEMON $PARAMS"
echo " ... done."
;;
status)
ps aux | grep -v grep | grep cod > /dev/null
CHECK=$?
[ $CHECK -eq 0 ] && echo "$DESC ist online" || echo "$DESC ist offline"
;;
*)
echo "Benutze: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit 0
Kann mir da jemand helfen? Weiß nicht wo ich das einbinden muss damit es nach einem Neustart des servers automatisch startet!
--- edited by yoda: Thema angepasst ---
ich habe folgendes Problem. ich habe mir einen Root server gemietet und da laufen zwei gameserver drauf. nur ist es so das ich gerne nach einem Neustart die zwei server zum laufen bringen will ohne das ich sie manuell starte. Wie bekomme ich sowas hin? Ich habe folgendes startscript, mit dem ich manuell alles starte und zwar so :
#! /bin/sh
#########################################################
# THIS FILE IS FOR STARTING AN Call of Duty 1.2 SERVER #
#########################################################
# Use at your Own Risk !!!!!!!!!!! #
# You need screen installed on your server #
#########################################################
# Vars: #
# G_USER Username #
# NAME The Screen Name #
# DESC Server Desciption #
# 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=cod2pub
################## Vars #################################
# Screen NAME
# Attach Screen : # screen -r NAME
# Detach Screen : # [CTRL]+[A]; [D]
# Don't press [CTRL]+[C] it will terminate screen
NAME=cod2
################## Server Description ###################
# Single Word DESC=myserver
# Multiple Words DESC="This is my Server"
DESC="Call of Duty 2 eXtrem Mod Server"
################## Parameter ############################
# CAN USE: +servercfgfile server.cfg OR +exec server.cfg
PARAMS="+exec server.cfg"
################## Directory ############################
# Your Path to cod Directory (absolute)
DIR=/home/gameserver/public
################## DAEMON ##############################
# You place your startscript here, normally hlds_run
SCRIPT=cod2_lnxded
########################################################
#### DONT CHANGE ANYTHINK BELOW THIS LINE ! ! ! ####
########################################################
DAEMON=$DIR/$SCRIPT
case "$1" in
start)
if [[ `su $G_USER -c "screen -ls | grep $NAME"` ]]
then
echo "$DESC läuft bereits!"
else
echo "Starte $DESC "
su $G_USER -c "cd $DIR; screen -d -m -S $NAME $DAEMON $PARAMS"
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 $DAEMON $PARAMS"
echo " ... done."
;;
status)
ps aux | grep -v grep | grep cod > /dev/null
CHECK=$?
[ $CHECK -eq 0 ] && echo "$DESC ist online" || echo "$DESC ist offline"
;;
*)
echo "Benutze: $0 {start|stop|restart|status}"
exit 1
;;
esac
exit 0
Kann mir da jemand helfen? Weiß nicht wo ich das einbinden muss damit es nach einem Neustart des servers automatisch startet!
--- edited by yoda: Thema angepasst ---