lancemment de serveur

lancemment de serveur - Shell/Batch - Programmation

Marsh Posté le 02-02-2009 à 17:39:10    

Bonsoir
 
Voilà j'ai deux serveur sur un pc sous différents user et je souhaite les lancer grâce à un script donc voilà ce que j'ai fais pour le moment :
 

Code :
  1. #!/bin/sh
  2. #start_serv
  3. #Script pour lancer les serveurs d'une machine situé dans différent user
  4. #Lancement du serveur Teamspeak
  5. case "$1" in
  6.     start)
  7.        echo -n "Lancement du serveur Teamspeak"
  8.        su - teamspeakuser -c /home/teamspeakuser/tss2_rc2/
  9.         ./teamspeak2-server_startscript start
  10.     ;;
  11. esac
  12. #Vérifie si le serveur Teamspeak c'est bien lancé
  13. if [ "$1" != "0" ]; then
  14.    zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue sur le serveur Teamspeak"
  15.    exit 100;
  16. fi
  17. #lancement du serveur Counter-Strike : source
  18. case "$2" in
  19.     start)
  20.        echo -n "lancement du serveur Counter-Strike : source"
  21.        su - css -c /home/css/
  22.         ./srcds_run -console -game cstrike +map de_dust2 -maxplayers 8 -autoupdate -tickrate 100 +port 27015
  23.     ;;
  24. esac
  25. #Vérifie si le serveur Counter-Strike : source c'est bien lancé
  26. if [ "$2" != "0" ]; then
  27.    zenity --error --title="Une erreur est survenue" --text="Une erreur est survenue sur le serveur Counter-Strike : source"
  28.    exit 200;
  29. fi
  30. exit 0;


 
Quand je le lance, il m'affiche direct qu'il y a une erreur (je pense que c'est a cause de la variable $1 qui n'est pas mis a 1) donc comment je pourrais faire pour regler se problème ?
Pour info je suis sous Ubuntu.
 
D'avance merci


Message édité par Damoun le 02-02-2009 à 20:41:40
Reply

Marsh Posté le 02-02-2009 à 17:39:10   

Reply

Marsh Posté le 03-02-2009 à 10:29:18    

Ca aiderait si tu collais ici le message d'erreur exact que tu obtiens.

Reply

Marsh Posté le 03-02-2009 à 23:55:49    

Euh tu n'a même pas regardé le script ?
 
Le message d'erreur fais partit de mon script puisqu'il vérifie si la précédente commande c'est bien effectuer et comme il m'affiche a chaque fois que je le lance qu'il y a une erreur, eh beh y un problème dans mon script, mais quoi aucune idée :s

Reply

Marsh Posté le 04-02-2009 à 08:55:25    

Damoun a écrit :

Euh tu n'a même pas regardé le script ?


Eh oh du calme, c'est toi qui a besoin d'aide, pas moi...
 
Vu que tu ne donnais aucune information dans ton message, comment veux-tu qu'on devine que l'erreur dont tu parles est l'erreur que tu lèves dans ton script, et pas une errreur de shell ?
 
Ensuite, c'est quoi ça :

su - teamspeakuser -c /home/teamspeakuser/tss2_rc2/
./teamspeak2-server_startscript start


Ca ne veut rien dire. Tu es sûr que ce sont deux lignes différentes ?


Message édité par matafan le 04-02-2009 à 09:01:03
Reply

Marsh Posté le 04-02-2009 à 18:47:27    

je lance des serveur, c'est la commande pour lancer un serveur teamspeak lit au moins les commentaires dans mon script ><
 
su - teamspeakuser c'est pour ce connecté a une autre session
-c /home/teamspeakuser/tss2_rc2/ c'est pour monter dans le dossier et ./teamspeak2-server_startscript start c'est pour lancer le serveur mais laisse tombé, je vois que tu n'y comprend rien, toi tu ne pourras pas m'aider lol

Reply

Marsh Posté le 04-02-2009 à 22:58:18    

Ecoute mon grand, ça te vient pas l'idée que c'est peut-être toi qui n'y comprend rien ?
 
Ta ligne avec le "su" ne fait qu'exécuter "/home/teamspeakuser/tss2_rc2/" en tant que "teamspeakuser". Or /home/teamspeakuser/tss2_rc2/ ne peut pas être exécuté puisque c'est un répertoire. Donc erreur.
 
Ensuite ta commande ./teamspeak2-server_startscript start est toujours exécutée sous le user initial. On ne peut pas "changer d'uid" en cours de script. Seule la commande passée au -c est exécutée sous le nouvel uid.
 
Bref ces deux lignes n'ont aucun sens.
 
Comme je suis trop bon, ou trop con, je te suggère quand même d'aller voir du côté de la commande start-stop-daemon, qui vu ton niveau fait ça mieux que ce que tu pourrais arriver à faire à la main.


Message édité par matafan le 04-02-2009 à 22:59:08
Reply

Marsh Posté le 05-02-2009 à 20:33:29    

mais bien sur >< merci les kevin ici
 
aller bye

Reply

Marsh Posté le 05-02-2009 à 20:38:04    

Damoun a écrit :

mais bien sur >< merci les kevin ici
 
aller bye


 
Matafan est quelqu'un de compétent qui aide beaucoup de monde ici.
Et vu la tête de ton script, et le peu d'infos pertinentes que tu fournis, il est évident que tu ne connais pas grand chose.
 
Je te demanderais donc de te calmer un peu, et d'accorder plus d'attention sur les réponses que tu reçois.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed