Multi processus SM sous linux

Parlez de tout ce qui est lié à Shootmania.

Moderator: French Moderator

shadowgaming
Posts: 32
Joined: 08 May 2013, 16:15

Multi processus SM sous linux

Post by shadowgaming »

Bonjour,

a chaque fois que je redémarre mon serveur shootmania il me créer un autre processus dans mes processus linux, est il possible d'avoir une commande stop afin de kill le processus avant qu'il en démarre un autre ?

Cordialement
shadowgaming
Posts: 32
Joined: 08 May 2013, 16:15

Re: Multi processus SM sous linux

Post by shadowgaming »

voici la ma commande de lancement :

./ManiaPlanetServer /game_settings=MatchSettings/SMStormElite.txt /dedicated_cfg=$SERVERCONFIG /title=SMStormElite@nadeolabs
User avatar
TMarc
Posts: 15255
Joined: 05 Apr 2011, 19:10
Location: Europe
Contact:

Re: Multi processus SM sous linux

Post by TMarc »

tu devrais te créer un petit script qui cherche le processus en marche actuellement, puis tu le kill.
la liste des processus actifs:
ps -aux | grep maniaplanetserver
ou semblable (ça fait 10 ans que je n'ai plus touché à linux :mrgreen: )
shadowgaming
Posts: 32
Joined: 08 May 2013, 16:15

Re: Multi processus SM sous linux

Post by shadowgaming »

il n'y a aucune commande pour stoper le serveur ?
User avatar
TMarc
Posts: 15255
Joined: 05 Apr 2011, 19:10
Location: Europe
Contact:

Re: Multi processus SM sous linux

Post by TMarc »

si, il y a une requête xml rpc pour le shutdown.
Mais il te faut un controlleur de serveur
https://github.com/maniaplanet/document ... r/basic.md
shadowgaming
Posts: 32
Joined: 08 May 2013, 16:15

Re: Multi processus SM sous linux

Post by shadowgaming »

oui j'ai sa mais il y a aucune commande de stop pour linux ?
User avatar
TMarc
Posts: 15255
Joined: 05 Apr 2011, 19:10
Location: Europe
Contact:

Re: Multi processus SM sous linux

Post by TMarc »

ben, dans certains scritps de serveurs, il y a certainement un bouton ou un lien qui déclanche l'arrêt du serveur,
mais c'est à voir avec le script de serveur.
Essaye de trouver en cherchant dans les forums sur TM.
P1n0u
Posts: 202
Joined: 31 Jul 2012, 06:36

Re: Multi processus SM sous linux

Post by P1n0u »

Il y a déjà eu des scripts de démarrage de fait, mais je te passe le mien qui est un peu modifié.
Tu devra démarré ton serveur avec le script pour qu'il sache le fermer

les options sont (start, stop, restart et status)

personnellement je renomme en plus l'executable "ManiaPlanetServer" en "Elite1", "Elite2"... afin d'avoir au premier coup d'oeil dans la liste des processus une vision claire des différent serveur qui sont sur la même machine.

Code: Select all

    #!/bin/bash
    #

    SRV_PATH=/home/maniaplanet/
    PID_PATH=/home/maniaplanet/
    OPTION= /title=SMStorm /dedicated_cfg=dedicated_cfg.txt /game_settings=MatchSettings/SMStormRoyal.txt

    start() {
            if [ -e "$PID_PATH/ManiaPlanetServer.pid" ]
            then
                    PID=$(cat "$PID_PATH/ManiaPlanetServer.pid")
                    if ps -p $PID > /dev/null
                    then
                        echo "Server ManiaPlanetServer(pid:$PID) : already running !"
                    fi
            else
                    cd $SRV_PATH/Logs/
                    rm *
                    cd $SRV_PATH
                    ./ManiaPlanetServer $OPTION
                    ps aux | grep "ManiaPlanetServer" | grep -v "grep" | awk '{ print $2 }' > "$PID_PATH/ManiaPlanetServer.pid"
                    echo "Server ManiaPlanetServer : started !"
            fi
    }
    stop() {
            if [ -e "$PID_PATH/ManiaPlanetServer.pid" ]
            then
                    PID=$(cat "$PID_PATH/ManiaPlanetServer.pid")
                    kill -9 $PID
                    rm "$PID_PATH/ManiaPlanetServer.pid"
            fi

            echo -n "Stopping Server : "

            if [ -e "$PID_PATH/ManiaPlanetServer.pid" ]
            then
                    PID=$(cat "$PID_PATH/ManiaPlanetServer.pid")
                    kill -9 $PID
                    rm "$PID_PATH/ManiaPlanetServer.pid"
                    echo "Server ManiaPlanetServer : stopped"
            else
                    echo "Server ManiaPlanetServer : already stopped"
            fi
    }
    status() {
            if [ -e "$PID_PATH/ManiaPlanetServer.pid" ]
            then
                    PID=$(cat "$PID_PATH/ManiaPlanetServer.pid")
                    if ps -p $PID > /dev/null
                    then
                        echo "Server ManiaPlanetServer(pid:$PID) : running"
                    else
                        echo "Server ManiaPlanetServer : stopped"
                    fi
            fi

    }

    if [ -d $PID_PATH ]
    then
            echo -n ""
    else
            mkdir $PID_PATH
    fi

    case "$1" in
            start)
                    start
            ;;
            stop)
                    stop
            ;;
            status)
                    status
            ;;
            restart)
                    stop
                    start
            ;;
            restartall)
                    stop 1
                    stop 2
                    stop 3
                    start 1
                    start 2
                    start 3
            ;;
            *)
                    echo "Usage: {start|stop|restart|status}"
                    exit 1
            ;;
    esac
    exit 0
shadowgaming
Posts: 32
Joined: 08 May 2013, 16:15

Re: Multi processus SM sous linux

Post by shadowgaming »

merci, moi il me faudrait uniquement la commande pour stopper le serveur ou le processus linux, je suis directeur d'une société de location de serveurs de jeux, les commandes de start et de reboot marche mais quand un client reboot, cela me créer un autre processus linux
P1n0u
Posts: 202
Joined: 31 Jul 2012, 06:36

Re: Multi processus SM sous linux

Post by P1n0u »

Enchanté Msieur le directeur :D

Vous effectuez le reboot par qu'elle methode ?
Regardez dans mon shell, il y a tout pour retrouver un nouveau PID.

exemple :

Code: Select all

ps aux | grep "ManiaPlanetServer" | grep -v "grep" | awk '{ print $2 }' > "$PID_PATH/ManiaPlanetServer.pid"
me retourne le PID et le note dans le fichier "ManiaPlanetServer.pid"
Post Reply

Return to “Shootmania”

Who is online

Users browsing this forum: No registered users and 1 guest