• 0

comment lancer automatiquement un serveur sous linux


santino10

Question

14 réponses à cette question

Messages recommandés

thedark on a besoin de toi :o[/quotemsg]

J'arrive j'arrive... (concours de pétansque finit a 2 h 00 du matin..)

Donc pour lancer automatiquement un serveur CS au boot de Linux, c'est faisable je pense, mais il y a un blême c'est la console du serveur. Tu peux utiliser crontab pour relancer un serveur qui a planté (enfin ça depend du plantage aussi), pour ajouter un serveur cs comme service ça depend de ta distribution, les noms de fichiers diffèrent un peu.

[:edith]

Le script présent dans l'ancien tuto :

#!/bin/sh

dir="./"

# définit la variable d'éxécution, a modifier IP, Port, map selon les gouts...

srcdexe="srcds_run -game cstrike -ip xxx.xxx.xxx.xxx -port 27015 +map de_dust2 +maxplayers 20 -pidfile srcds.pid"

# faut pas toucher ça !!!

srcdname="srcds.pid"

cd $dir

if test -r $srcdname; then

# vériification du PID

srcdpid=`cat $srcdname`

if `kill -CHLD $srcdpid >/dev/null 2>&1`; then

exit 0

fi

echo "Source Dedicated Server Crontab :"

echo ""

echo " Effacement du fichier $srcdname"

rm -f $srcdname

fi

echo ""

echo "Processus Absent.... Redémarrage du Serveur"

echo ""

./$srcdexe

Lien vers le commentaire
Partager sur d’autres sites

super merci the dark il me semblait bien qu'il y avait un tutoriel mais en ce qui conserne le lancement, je me demandais s'il etait possible de modifier le script pour utiliser la commande screen??

Du style au lieu de mettre sa:

srcdexe="srcds_run -game cstrike -ip xxx.xxx.xxx.xxx -port 27015 +map de_dust2 +maxplayers 20 -pidfile srcds.pid"

je mettrait bien sa

srcdexe="srcds_run -game dod -vacbeta +port 27015 +map dod_flash +maxplayers 24 srcds.pid"

mais je sais pas si sa va marche lol je teste de suite et je vous dis, en plus j'en ai 2 a mettre en marche comme sa et pour information, ma distribution est ubuntu ( base de debian, meme language)

Sinon sur le forum ubuntu, le moderateur m'a dit "c'est simple, inspire toi d'un script de ton fichier /etc/init.d/"

ouai ouai bien sur et la marmotte.....mais je suis pas encore un pro de linux donc j'ai du mal.

j'ai deja passer 4 heure sur iptables pour que sa marche lol

bon en tout cas merci et je vous dit si sa tourne

Lien vers le commentaire
Partager sur d’autres sites

euh...je crois j'ai fait caca dans ma culotte, je pouvais plus redemarrer le pc snif. Le script que j'ai adapter marche impeccable mais au moment du demarrage du pc, il demarre les base du systeme et ensuite il lanse le serveur mais du coup il lance pas gnome et je me retrouve coince dans le serveur sans avoir acces au commande!!!

j'ai reussi en mode recovery a supprimer le cript mais comment faire pour que il me le lance pas de cette manière??

merci d'avance de votre aide a tous!!!

voici le script actuelle

#!/bin/sh

dir="/server/public/"

# définit la variable d'éxécution, a modifier IP, Port, map selon les gouts...

srcdexe="hlds_run -game dod -vacbeta -port 27015 +map dod_flash +maxplayers 23 srcds.pid"

# faut pas toucher ça !!!

srcdname="srcds.pid"

cd $dir

if test -r $srcdname; then

# vériification du PID

srcdpid=`cat $srcdname`

if `kill -CHLD $srcdpid >/dev/null 2>&1`; then

exit 0

fi

echo "Source Dedicated Server Crontab :"

echo ""

echo " Effacement du fichier $srcdname"

rm -f $srcdname

fi

echo ""

echo "Processus Absent.... Redémarrage du Serveur"

echo ""

./$srcdexe

ps j'ai essayer avec la commande screen mais il me dit que il ne peut pas executer ./screen ou qu'il ne trouve pas le fichier screen je sais plus.

Lien vers le commentaire
Partager sur d’autres sites

oui bien sure tu peux rajouter le screen.

Du style au lieu de mettre sa:

srcdexe="srcds_run -game cstrike -ip xxx.xxx.xxx.xxx -port 27015 +map de_dust2 +maxplayers 20 -pidfile srcds.pid"

je mettrait bien sa

srcdexe="srcds_run -game dod -vacbeta +port 27015 +map dod_flash +maxplayers 24 srcds.pid"

Mais la tu changes juste le mod :)

Pour le script avec screen :

dir="./"

echo "Demarage Cs Server"

sleep 1

srcdexe="screen -A -m -d -S myserver hlds_run -game dod -vacbeta -port 27015 +map dod_flash +maxplayers 23 srcds.pid"

srcdname="srcds.pid"

cd $dir

if test -r $srcdname; then

# vériification du PID

srcdpid=`cat $srcdname`

if `kill -CHLD $srcdpid >/dev/null 2>&1`; then

exit 0

fi

echo "Source Dedicated Server Crontab :"

echo ""

echo " Effacement du fichier $srcdname"

rm -f $srcdname

fi

echo ""

echo "Processus Absent.... Redémarrage du Serveur"

echo ""

./$srcdexe

Le problême en tant que service c'est que tu n'as pas accès à la console.

Lien vers le commentaire
Partager sur d’autres sites

euh... snif sa marche pas, le probleme ets le suivant, lors du redemarrage de mon ubuntu, il me dit qu'il ne trouve pas le fichier ./screen ??? mais bien sur qu'il existe pas puisque screen n'est qu'une commande pour executer le fichier hlds_run donc comment je peux faire? peut etre qu'il ne charge le module screen que apres (en meme temps que gnome?) se qui l'empecherait de comprendre la commande?

merci de votre aide

Lien vers le commentaire
Partager sur d’autres sites

oui, screen ets installer puisque j'arrive a faire fonctionner le serveur via cette commande quand le pc est lanse.

j'ai mi le script dans /etc/init.d/ et j'ai fait

update-rc dod defaults

parceque je sais que pour lanser automatiquement iptables j'ai fait sa

update-rc.d iptables-start defaults

et il ma dit ok puis j'ai redemarrer mais pour le runlevel je connait pas trop donc je peux pas te dire dsl

Lien vers le commentaire
Partager sur d’autres sites

bon alors je connaissais pas cron donc plutot que de faire le feneant et de dire connait pas je viens de chercher et......c'est purement genialllllll!!!

Sa convient exactement a mes besoins et je vais m'en servir pour mettre regulierement les stats à jours.

Merci the dark, tu viens de resoudre mon problem

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.