CoD:UO server Auto Restart bei Crash

  • 1. Mit screen starten
    2. Startskript erstellen, daß vor dem Starten eine Abfrage macht, ob der Screen noch vorhanden ist (Beispiel: screen -ls | grep $LABEL && exit 1).
    Wenn ja, dann nichts tun, wenn nein, dann Server starten
    3. Skript in crontab einbauen (*/5 * * * * /pfad/startskript)


    Vermulich mußt Du Dich tierisch einlesen, aber bei mir steht der Streß grad 24h an der Tür. ;)

  • Probiere al folgendes.
    Mache eine textdatei auf und füge folgendes ein:


    #!/bin/sh
    trap "" 1


    PORT=`ps aux | grep coduo_lnxded | grep 28960 | grep -v grep | tail -1 | awk '{ print $2 }'`


    if test -z $PORT
    then
    while true
    do
    nohup ./coduo_lnxded +set dedicated 2 +set sv_punkbuster 1 +set net_port "28960" +set ttycon 0 +exec server.cfg +map_rotate
    sleep
    done
    else
    echo "Server leuft bereits!! wenn er haengt mit ./stopcod.sh Stoppen!!"
    fi




    Passe bitte den Port an !!!!!!!! Haste es eingefügt speicherst du die textdatei unter runcod.sh
    Dann machst du nochmal eine textdatei auf und fügst folgendes ein:


    #!/bin/sh


    PIDRUN=`ps aux | grep runcod.sh | grep cod | grep -v grep | tail -1 | awk '{ print $2 }'`
    PIDSOF=`ps aux | grep coduo_lnxded | grep cod | grep 28960 | grep -v grep | tail -1 | awk '{ print $2 }'`


    if test $PIDRUN
    then
    kill -9 $PIDRUN
    fi
    if test $PIDSOF
    then
    kill -9 $PIDSOF
    fi
    echo "Server ist gestopt!! mit ./runcod.sh Starten!!"


    Passe auch hier den Port an und da wo grep cod steht, da muss dein ordner stehen der sich im home ordner befindet. Haste das gemacht so speicherst du das unter stopcod.sh ab. Beide sachen kopierst du jetzt in dein CoD ordner aber NICHT in dein main ordner sonder da wo die coduo_inxded liegt. Anschließend loggst du dich im ssh ein gehst in den cod ordner bsp: cd cod und startest dann den server mit folgenden Befehl


    screen ./runcod.sh


    Nun öffnet sich ein fenster und da steht was it nohup oder so. Kontrolliere ob dein server nun gestartet ist und warte ggfl. 1 min. ist er on so machste ein screen mit strg und a und c ( erst a drücken und strg net loslassen dnach c drücken ) Hoffe konnte dir weiterhelfen.



    MFG Blubber



    P.s. haste fragen adde mich im icq: 219119389

  • Zitat von OsIrIs-OnE

    Also mit Screen starten, is ja alles kein Problem, aber bei schritt 2 und 3 hab ich schon kein Plan mehr. Bin noch net so ein Linux Profi.


    Ich würd Dir ja auch gern helfen. Aber es bringt nicht viel, wenn ich jemandem das Autofahren beibringen will und der sagt mir dann, das mit den Pedalen kann er nicht, er ist nicht so der Rennfahrer.


    Wer einen Server verwalten will muß sich mit der Bash auskennen. Alles andere ist allerhöchstens Bedienung und sogar dafür muß man die Bash zu einem Großteil kennen.


    Ich weiß, daß aller Einstieg schwer ist. Aber hilft ned. ;)


    Code
    # man bash


    Wenn das noch ein zu schwerer Schritt ist, dann mach bitte mal das Tutorial von der Linuxfiebel durch.


    Ich hoffe mal inständig, daß es nicht so ist. Wenn Dir das aber zuviel Arbeit ist, nur um einen Server selbständig neu zu starten, wenn er crasht, dann kündige Deinen Root-Vertrag und geh Solitär spielen, denn ein Root-Server macht oft viel Arbeit und das Resultat ist ne Kleinigkeit.


    Sollte etwas unerwartet nicht so klappen, wie Du es aus einer Anleitung entnimmst, dann beschreib das hier gerne und ich werde mein Möglichstes tun, Dich zeitnah zu unterstützen. Ich werde Dir aber nicht jeden Schritt vorkauen.


    Das Konzept ist leicht:


    - Man startet ein Startskript periodisch (z.B. alle 5 Minuten)
    - Das Skript überprüft, ob der Server noch läuft.
    - ja: nichts tun und END
    - nein: Server neu starten


    Sollte alles mit den Bash-Basics zu lösen sein. Viel Erfolg! :)

  • Zitat von blubber

    nohup ./cod_lnxded +set dedicated 2 +set sv_punkbuster 1 +set net_port "28960" +set ttycon 0 +exec server.cfg +map_rotate


    Muss das net :
    nohup ./coduo_lnxded +set dedicated 2 +set sv_punkbuster 1 +set net_port "28960" +set ttycon 0 +exec server.cfg +map_rotate
    heißein?


    Das mit den Automatisch neustarten muss ja auch nit unbedingt sein, nur zurzeit weiß ich keine andere Lösung, denn sobald unser Gameserver ne weile voll ist, crasht er einfach nach ner zeit, und muss ihn dann halt neustarten. Naja und der Rootserver Anbieter, macht zurzeit auch Probleme, weil T-Online User, manchmal High Pings haben. Und die meine die müssen sich um sowas nicht kümern.

  • Zitat von OsIrIs-OnE

    Also mit Screen starten, is ja alles kein Problem, aber bei schritt 2 und 3 hab ich schon kein Plan mehr. Bin noch net so ein Linux Profi.



    Alex hat da recht mach wenn du dich damit nicht so gut asukennst erstmal ein kleinen Linuxkurs. Linux kann man nicht mit Windows vergleichen und es ist ne sache für sich. Forum ist gut und schön aber ich würde ungern std. lang warten bis eine Antwort da ist. Zu not kauf dir einen 2 rechner und übe mit Linux so kannste gucken was mache ich falsch oder richtig ^^ .



    blubber

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!