• 29 Juin 2025, 10:06:44


Auteur Sujet: Vous avez fait plusieurs scripts batchs , mais aucun pour samp!!  (Lu 2434 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne kusomio

  • *
  • Nouveau
  • Messages: 15
    • Voir le profil
bonjour , j'ai vu que vous aviez fait plusieurs script batch , mais aucun pour samp . Moi oui grâce à l'aide de plusieurs personnes , mais il n'est pas
terminée a 100 % , il y a comme qui dirait un petit bug . je vous donne le code

#!/bin/sh
cd /home/admin/samp/
PROCESS_COUNT=$(ps -fu root | grep samp022svr | grep -v grep | wc -l)
case $PROCESS_COUNT in
0)  /home/admin/samp/samp022svr &
;;
1) echo OK, program is running once
;;
*) echo OK, program is already running multiple times
;;
esac

ça lance le serveur , mais quand je fais rcon exit il ne se relance pas je ne sais pas pourquoi . Si vous pouviez m'aider à résoudre ce probleme.
ça serait utiles à plus d'un d'avoir un restarter pour linux
Merci de l'intéret que vosu porterez a ce message              :rules
Signature non conforme.

Hors ligne TuC

  • *
  • Messages: 187
    • Voir le profil
    • http://www.gtaonline.fr
Re : Vous avez fait plusieurs scripts batchs , mais aucun pour samp!!
« Réponse #1 le: 03 Février 2008, 12:44:10 »
MMMmmm le vieux post poussièreux !

Excuse moi pour la reponse tardive mais j ai come qui dirait que j ai decrocher de gta y a bien longtemps ... je reste juste actif de temps en temps pour le codage ...
aucun pour sa-mp oui et non vu que c est toujours la meme chose a quelques differences ...

Voila l exemple pour SA-MP

PATH=/bin:/usr/bin:/sbin:/usr/sbin
DIR="/home/blablabla/dossierserveur"
DESC="Serveur SA-MP"
NAME="samp02svr"
SCREENNAME="Serveur1SAMP"

################################################################
################## Script réaliséour GTAOnline.fr ###############
####################### Par Mr.TRONE alias TuC #################
################################################################

case "$1" in
start)
echo "Demarrage du $DESC: $NAME"
if [ -e $DIR ];
then
cd $DIR 
screen -d -m -S $SCREENNAME ./$NAME
else echo "repertoir non trouver : $DIR!"
fi
;;

stop)
if [[ `screen -ls |grep $NAME` ]]
then
echo -n "Arret du $DESC: $NAME"
kill `screen -ls |grep $SCREENNAME |awk -F . '{print $1}'|awk '{print $1}'`
echo " ... OK."
else
echo "Ne trouve pas de serveur lancer $DESC"
fi
;;

restart)
if [[ `screen -ls |grep $SCREENNAME` ]]
then
echo -n "Arret du $DESC: $NAME"
kill `screen -ls |grep $SCREENNAME |awk -F . '{print $1}'|awk '{print $1}'`
echo " ... OK."
else
echo "Ne trouve pas de serveur lancer $DESC"
fi

echo -n "Redemarrage du $DESC: $NAME"
cd $DIR 
screen -d -m -S $SCREENNAME ./$NAME
echo " ... OK."
;;

status)
ps aux | grep -v grep | grep $SCREENNAME > /dev/null
CHECK=$?
[ $CHECK -eq 0 ] && echo "Lancer" || echo "Arreter"
;;


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

exit

Configuration :

Indiquez dans DIR le chemin de votre dossier serveur SA:MP.

Indiquez dans DESC le Type de serveur.

Indiquez dans NAME le nom de l'executable  .

Indiquez dans SCREENNAME le nom que vous voulez que porte votre screen.



Pour l'utiliser, allez en accès ssh et créez un nouveau document à l'aide de la commande "vi" et faites un copier coller de ce script..

Une fois fini, enregistrez le par exemple avec le nom "sampscript.sh"

Il n'est pas nécessaire qu' il se trouve dans le dossier du serveur .

N'oubliez pas de mettre les CHMOD pour pouvoir permettre l'exécution du script.

Le serveur se lancera en background via un screen ce qui permettra de pouvoir quitter l'accès ssh sans fermer le serveur.

Pour l'utiliser c'est simple tapez :

./sampscript.sh start pour le démarrer
./sampscript.sh stop pour l'arrêter
./sampscript.sh restart pour le rebooter
./sampscript.sh status pour savoir si le serveur est arrêter ou démarrer.

Si vous avez plusieurs serveurs SA:MP changez juste les noms des screens pour pouvoir utiliser plusieurs scripts sur plusieurs serveurs
« Modifié: 03 Février 2008, 12:47:09 par TuC »