Screen en script linux [Résolu/Fermé]

Signaler
Messages postés
68
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
2 février 2018
-
Messages postés
68
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
2 février 2018
-
Bonjour,

J'administre actuellement un serveur de jeu, installer sous Debian 5. Je voulais, par un soucis de simpliciter, au lieu de lancé toutes les commandes à la main pour lancer chaque serveur de jeu dans des screens, écrire un script me permettant de les lancer tous :

Actuellement je tape toutes les commandes pour démarrer les serveurs les uns après les autres

Ce que je demande c'est par exemple créer un fichier du genre start_server.sh que je pourrais éxécuter et qui e lancerai tout les serveurs automatiquement, dans des screens séparés.

Par exemple, pour mon serveur cod4, voici la commande que j'utilise actuellement :
screen -dmS cod4 ./cod4_lnxded +exec server.cfg +map_rotate +set dedicated 2

Qui plus est, je souhaiterai (j'ai 5 serveur de jeu et un 6ème à venir) que dans ce script tous les serveurs de jeu se lance les uns après les autres, mais si possible avoir une petite tempo entre chaque serveur, histoire de ne pas surchargé le serveur avec 5 serveurs de jeux qui démarre en même temps...

Merci d'avance à tous ceux qui me répondront, je reste bien sur à votre entière disposition pour toute informations complémentaires...

Cordialement,

14 réponses

Messages postés
18242
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 juin 2021
5 305
et si tu vas dans ../game/cod4
et exécutes, comme au post #1
screen -dmS cod4 ./cod4_lnxded +exec server.cfg +map_rotate +set dedicated 2
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
18242
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 juin 2021
5 305
hello
tu peux mettre tes commandes avec un délai entre, dans le fichier start_server.sh, que tu rends exécutable avec chmod +x start_server.sh

screen -dmS cod4 ./cod4_lnxded +exec server.cfg +map_rotate +set dedicated 2
sleep 5
commande
sleep 5
etc

pour l'exécuter: ./start_server.sh
Messages postés
68
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
2 février 2018
2
oki mais le pb c'est que lorsque je test juste en mettant une commande de base par exemple là juste la commande pour lancé le serveur cod4 ça ne fait rien du tout.

Voici mon fichier actuel :

#!/bin/bash

screen -dmS cod4public ../game/cod4/cod4_lnxded +exec server.cfg +map_rotate +set dedicated 2

le chemin d'accès est le bon mon utilisiteur (adminjeux) et bien propriétaire du dossier game pas de problème la dessus sauf que lors que je tape ./start_server.sh il ne fait rien, par rien j'entends que le serveur cod4 ne se lance pas et que le screen n'apparait pas lorsque je tapes un screen -ls
Messages postés
18242
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 juin 2021
5 305
si dans ton fichier, tu mets
#!/bin/bash

screen -dmS cod4public sleep 60
tu le démarres, tu le vois avec screen -ls ?
Messages postés
68
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
2 février 2018
2
oui je le vois, cela voudrait dire qu'il ne prends pas en comptes mon chemin d'accès ou les options pour l'exécution?
Messages postés
18242
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 juin 2021
5 305
es-tu dans le bon répertoire ? que répond
ls -l ../game/cod4/cod4_lnxded
Messages postés
68
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
2 février 2018
2
-rwxr-xr-x 1 adminjeux adminjeux 2278332 jui 2 2008 ../game/cod4/cod4_lnxded


Voilà la réponse que j'obtiens.
Messages postés
18242
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 juin 2021
5 305
et démarrer dans le terminal:
screen -dmS cod4public ../game/cod4/cod4_lnxded +exec server.cfg +map_rotate +set dedicated 2
ou
../game/cod4/cod4_lnxded +exec server.cfg +map_rotate +set dedicated 2
fonctionne ?
le chemin de la commande est différent dans le post #1
Messages postés
68
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
2 février 2018
2
Lorsque je tape la deuxième commande voilà ce que j'otient

../game/cod4/cod4_lnxded +exec server.cfg +map_rotate +set dedicated 2
CoD4 MP 1.7 build linux-i386 Jun 28 2008
begin $init
----- FS_Startup -----
Sys_Error: Error during initialization:
No IWD files found in /main

cela voudrait-il dire que je dois spécifier le chemin d'accès du fichier server.cfg
Messages postés
18242
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 juin 2021
5 305
oui si tu n'es pas dans le répertoire où il se trouve
Messages postés
68
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
2 février 2018
2
Losque je tape c'est commande en direct il me retourne la même erreur

../game/cod4/cod4_lnxded +exec ../game/cod4/server.cfg +map_rotate +set dedicated 2

../game/cod4/cod4_lnxded +exec ../game/cod4/main/server.cfg +map_rotate +set dedicated 2

lorsque je tapes :

ls -l ../game/cod4/main/server.cfg

Voilà la réponse :

-rw-r--r-- 1 adminjeux adminjeux 13674 jan 23 14:31 ../game/cod4/main/server.cfg

Je comprends plus là même en spécifiant l'emplacement du cfg il rejette ma commande...
Messages postés
68
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
2 février 2018
2
ça ça fonctionne c'est comme ça que je lance mon serveur actuellement
Messages postés
18242
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
13 juin 2021
5 305
essaye dans le script
#!/bin/bash

cd ../game/cod4
screen -dmS cod4public ./cod4_lnxded +exec server.cfg +map_rotate +set dedicated 2
Messages postés
68
Date d'inscription
mercredi 24 juin 2009
Statut
Membre
Dernière intervention
2 février 2018
2
Je te remercie, en fait c'était tout bête je ne vois même pas pourquoi j'ai pas pensé à changer de répertoire actif à chaque fois... Encore merci de ton aide dubcek