Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 28/12/2012, à 17:56

Bloupies

Executer sur un autre serveur

Bonjour

Je voudrais éxecuter un script qui prend le nom de la machine(hostname) et du système (uname) via ssh

J'aimerais executer mon script local dans un serveur distant ( via ssh )

J'ai regardé les topics qu'il y avait , et j'ai essayé :

ssh login@adressemachine bash < ~/script.sh

mais cela n'a pas l'air de fonctionner .

Quelqu'un aurait une idée ?

Hors ligne

#2 Le 28/12/2012, à 20:04

ArzhurB

Re : Executer sur un autre serveur

Salut,

Je ne suis pas certain d’avoir compris ce que tu voulais faire : le script doit être exécuté sur ta machine, se connecter à une machine distante via ssh, et renvoyer le résultat de uname et de hostname, c’est ça ?

Si c’est ce que tu veux faire, la commande permettant de faire ça est :

ssh identifiant@adresse_de_la_machine hostname && uname

On te demande le mot de passe du compte que tu demandes sur la machine, puis le nom réseau et le nom du système sont renvoyés sur la sortie de ton terminal.

Hors ligne

#3 Le 28/12/2012, à 22:07

Bloupies

Re : Executer sur un autre serveur

Salut , oui c'est ça ce que je veux faire .

Cependant , quand je disais le nom de la machine dans le script , c'était qu'une commande parmis tant d autre dans le script , je voudrais donc executer tout le script rassemblant ainsi les infos de l'autre machine

Hors ligne

#4 Le 29/12/2012, à 00:25

ArzhurB

Re : Executer sur un autre serveur

D’accord. Je n’ai pas le temps de rallumer une machine distante pour tester correctement la chose, mais il me semble que la commande que tu indiques dans ton premier message est correcte ; à condition, bien sûr, que ton fichier se nomme bien script.sh et soit situé à la racine de ton répertoire personnel. Qu’est-ce qui te fait dire que ça ne fonctionne pas ? Peux-tu me poster les éventuels messages d’erreur ?

Hors ligne

#5 Le 29/12/2012, à 07:23

Bloupies

Re : Executer sur un autre serveur

Salut , j'ai réussi à le faire mais en changeant le truc

Au lieu de

bash < ~/script.sh

j'ai du me déplacer au dossier au dossier courant donc ./script.sh

Sinon ça me dit no such file or directory .

Petit soucis : Le script executé doit enregistrer des infos dans des fichiers . Mais vu que je l'ai lançé sur le ssh , il les enregistre sur ma machine distante . N'y a t il pas de solution pour les enregistrer chez moi ?

Merci de ton aide .

Hors ligne

#6 Le 29/12/2012, à 11:26

ArzhurB

Re : Executer sur un autre serveur

Bien sûr, car en fait, ~/ veut littéralement dire : /home/ton_login. Il faut donc renseigner le chemin correct pour le script.

Moi, quand je fais :

ssh identifiant@adresse_de_la_machine bash < script.sh >> output.txt

la sortie est enregistrée sur ma machine locale, dans le fichier output.txt.

Tu peux éventuellement rajouter des parenthèses :

(ssh identifiant@adresse_de_la_machine bash < script.sh) >> output.txt

Ça marche aussi.

Hors ligne

#7 Le 29/12/2012, à 15:05

Bloupies

Re : Executer sur un autre serveur

Je viens d'essayer , ça marche , ça a enregistré le fichier texte avec les données .

Mais comment faire lorsque le script de base crée plusieurs fichiers à la base ?

Hors ligne

#8 Le 29/12/2012, à 16:34

ArzhurB

Re : Executer sur un autre serveur

Dans ce cas, je pense qu’il simple que tu postes ton script, en indiquant précisément les fonctions qui coincent, pour que nous puissions voir ensembles comment corriger ce qui ne va pas.

Hors ligne

#9 Le 01/01/2013, à 11:22

Bloupies

Re : Executer sur un autre serveur

Salut

Désolé du retard , j'ai finalement laissé tombé , casse tête à mon gout ! Ca ne veut pas faire ce que je veux .

Merci encore de ton aide

Hors ligne