Script sur machine distante avec ssh
Résolu/Fermé
nabil1706
Messages postés
17
Date d'inscription
mardi 21 novembre 2006
Statut
Membre
Dernière intervention
22 décembre 2006
-
18 déc. 2006 à 11:18
nabil1706 Messages postés 17 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 22 décembre 2006 - 22 déc. 2006 à 14:49
nabil1706 Messages postés 17 Date d'inscription mardi 21 novembre 2006 Statut Membre Dernière intervention 22 décembre 2006 - 22 déc. 2006 à 14:49
A voir également:
- Script sur machine distante avec ssh
- Script vidéo youtube - Guide
- Machine virtuelle windows - Guide
- Time machine - Guide
- Machine virtuelle gratuite - Télécharger - Émulation & Virtualisation
- Ssh download - Télécharger - Divers Web & Internet
10 réponses
mamiemando
Messages postés
33352
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
12 novembre 2024
7 804
19 déc. 2006 à 00:35
19 déc. 2006 à 00:35
Ca se fait directement avec la commande ssh !
Bonne chance
man ssh
Bonne chance
mamiemando
Messages postés
33352
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
12 novembre 2024
7 804
22 déc. 2006 à 14:22
22 déc. 2006 à 14:22
Ben il faut voir ce que tu as mis dans ta crontab, si le script à les droits en exécution... ce genre de choses :-)
Bonne chance
Bonne chance
nabil1706
Messages postés
17
Date d'inscription
mardi 21 novembre 2006
Statut
Membre
Dernière intervention
22 décembre 2006
2
22 déc. 2006 à 14:49
22 déc. 2006 à 14:49
oui il a tous les droits
sinon voilà mon script qui fonctionne
#!/usr/bin/expect -f
set i [lrange $argv 0 0]
set timeout 1
spawn /usr/bin/scp -i /home/frt2noc/.ssh/id_rsa script@222.151.167.136:/home/script/stats/Daily/StatProfileDaily* /home/frnoc;
expect "spawn /usr/bin/scp script@222.151.167.136:/home/script/stats/Daily/StatProfileDaily* /home/frnoc\n
Enter passphrase for key '/home/frnoc/.ssh/id_rsa':"
send "mdp\r"
expect eof
J'avais un INTERACT a la fin de mon script et il faut l'enlever et le remplacer par EXPECT EOF quand on le met dans la crontab
merci, et j'espere que ça aidera qqu'un d'autre ;-))
sinon voilà mon script qui fonctionne
#!/usr/bin/expect -f
set i [lrange $argv 0 0]
set timeout 1
spawn /usr/bin/scp -i /home/frt2noc/.ssh/id_rsa script@222.151.167.136:/home/script/stats/Daily/StatProfileDaily* /home/frnoc;
expect "spawn /usr/bin/scp script@222.151.167.136:/home/script/stats/Daily/StatProfileDaily* /home/frnoc\n
Enter passphrase for key '/home/frnoc/.ssh/id_rsa':"
send "mdp\r"
expect eof
J'avais un INTERACT a la fin de mon script et il faut l'enlever et le remplacer par EXPECT EOF quand on le met dans la crontab
merci, et j'espere que ça aidera qqu'un d'autre ;-))
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
19 déc. 2006 à 07:47
19 déc. 2006 à 07:47
Salut,
Regarde aussi du côté de la commande "expect".
Tu trouveras un exemple là.
;-))
Regarde aussi du côté de la commande "expect".
Tu trouveras un exemple là.
;-))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mamiemando
Messages postés
33352
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
12 novembre 2024
7 804
21 déc. 2006 à 01:58
21 déc. 2006 à 01:58
Moi je dis que tu te casses bien là tête. Il suffit de faire un système de clé SSH pour ne pas avoir à saisir le mot de passe,
http://www.noplay.net/Utilisation-des-clefs-SSH.html
... et d'appeler le script distant sur la même ligne que la commande ssh.
Bonne chance
http://www.noplay.net/Utilisation-des-clefs-SSH.html
... et d'appeler le script distant sur la même ligne que la commande ssh.
ssh login@hostname /le/script/a/lancer.sh
Bonne chance
mamiemando
Messages postés
33352
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
12 novembre 2024
7 804
21 déc. 2006 à 13:40
21 déc. 2006 à 13:40
Bon tu as deux PC :
- le pc A qui à ton script actuel
- le pc B qui pilote le script du pc A par ssh.
Tu as deux solutions :
- soit le pc B demande à A d'éxécuter le script, et ce script fait un scp des fichier de A vers B. Ca force à faire une clé ssh supplémentaire (de A vers B) c'est pas forcément top.
- soit tu crées un script sur le pc B, qui lance le script de A, puis rappatrie via scp les fichiers chez lui. Du coup pas besoin de clé ssh supplémentaire c'est toujours celle de B vers A qui est autorisée.
Bonne chance
- le pc A qui à ton script actuel
- le pc B qui pilote le script du pc A par ssh.
Tu as deux solutions :
- soit le pc B demande à A d'éxécuter le script, et ce script fait un scp des fichier de A vers B. Ca force à faire une clé ssh supplémentaire (de A vers B) c'est pas forcément top.
- soit tu crées un script sur le pc B, qui lance le script de A, puis rappatrie via scp les fichiers chez lui. Du coup pas besoin de clé ssh supplémentaire c'est toujours celle de B vers A qui est autorisée.
Bonne chance
nabil1706
Messages postés
17
Date d'inscription
mardi 21 novembre 2006
Statut
Membre
Dernière intervention
22 décembre 2006
2
19 déc. 2006 à 10:26
19 déc. 2006 à 10:26
Bonjour,
j'ai vu l'exemple, je m'en suis inspiré pour faire mon deuxieme script que voilà :
#!/usr/bin/expect -f
set force_conservative 1;
set timeout 3
spawn ssh -i /home/frnabe/.ssh/id_rsa -l script 212.151.167.136
expect "spawn ssh -i /home/frnabe/.ssh/id_rsa -l script 212.151.167.136\n
Enter passphrase for key '/home/frnabe/.ssh/id_rsa':"
send "mdp\r"
expect "\[script@vel-vms-db-1 script\]$"
send ".\/case_test Call\r"
expect "\[script@vel-vms-db-1 script\]$"
send "exit\r"
interact
au niveau de la connection, je ne sais pas comment lui indiquer d'utiliser des arguments et comment lui afficher le résultat sur la machine ou je lance ce script
Merci
j'ai vu l'exemple, je m'en suis inspiré pour faire mon deuxieme script que voilà :
#!/usr/bin/expect -f
set force_conservative 1;
set timeout 3
spawn ssh -i /home/frnabe/.ssh/id_rsa -l script 212.151.167.136
expect "spawn ssh -i /home/frnabe/.ssh/id_rsa -l script 212.151.167.136\n
Enter passphrase for key '/home/frnabe/.ssh/id_rsa':"
send "mdp\r"
expect "\[script@vel-vms-db-1 script\]$"
send ".\/case_test Call\r"
expect "\[script@vel-vms-db-1 script\]$"
send "exit\r"
interact
au niveau de la connection, je ne sais pas comment lui indiquer d'utiliser des arguments et comment lui afficher le résultat sur la machine ou je lance ce script
Merci
nabil1706
Messages postés
17
Date d'inscription
mardi 21 novembre 2006
Statut
Membre
Dernière intervention
22 décembre 2006
2
20 déc. 2006 à 11:23
20 déc. 2006 à 11:23
Voila mon script qui me permet de recupere des fichiers sur une machine distante, et j'aimerai y intégrer une variable qui prenne les valeurs dont j'ai besoin pour ne ne pas à avoir à ecrire les mêmes commandes à la suite (ici Call , Call1, et il y en a 8 autres)
#!/usr/bin/expect -f
set i [lrange $argv 0 0]
set timeout 3
spawn /usr/bin/scp -i /home/frnabe/.ssh/id_rsa script@222.151.167.136:/home/script/output_Cal
l.txt /home/frnabe;
expect "spawn /usr/bin/scp script@222.151.167.136:/home/script/output_Call.txt /home/frnabe\
n
Enter passphrase for key '/home/frnabe/.ssh/id_rsa':"
send "mdp\r"
interact
spawn /usr/bin/scp -i /home/frnabe/.ssh/id_rsa script@222.151.167.136:/home/script/output_Cal
l1.txt /home/frnabe;
expect "spawn /usr/bin/scp script@222.151.167.136:/home/script/output_Call1.txt /home/frnabe
\n
Enter passphrase for key '/home/frnabe/.ssh/id_rsa':"
send "mdp\r"
interact
Merci
#!/usr/bin/expect -f
set i [lrange $argv 0 0]
set timeout 3
spawn /usr/bin/scp -i /home/frnabe/.ssh/id_rsa script@222.151.167.136:/home/script/output_Cal
l.txt /home/frnabe;
expect "spawn /usr/bin/scp script@222.151.167.136:/home/script/output_Call.txt /home/frnabe\
n
Enter passphrase for key '/home/frnabe/.ssh/id_rsa':"
send "mdp\r"
interact
spawn /usr/bin/scp -i /home/frnabe/.ssh/id_rsa script@222.151.167.136:/home/script/output_Cal
l1.txt /home/frnabe;
expect "spawn /usr/bin/scp script@222.151.167.136:/home/script/output_Call1.txt /home/frnabe
\n
Enter passphrase for key '/home/frnabe/.ssh/id_rsa':"
send "mdp\r"
interact
Merci
nabil1706
Messages postés
17
Date d'inscription
mardi 21 novembre 2006
Statut
Membre
Dernière intervention
22 décembre 2006
2
21 déc. 2006 à 10:16
21 déc. 2006 à 10:16
merci de ta reponse,
mais il faut aussi que je rapatrie les fichiers que j'ai créés dans ce meme script
mais il faut aussi que je rapatrie les fichiers que j'ai créés dans ce meme script
nabil1706
Messages postés
17
Date d'inscription
mardi 21 novembre 2006
Statut
Membre
Dernière intervention
22 décembre 2006
2
22 déc. 2006 à 11:06
22 déc. 2006 à 11:06
Merci
j'avais opter pour la deuxieme solution
Maintenant il ne me reste plus qu'a mettre mon script EXPECT dans la crontab..Mais ça marcje pas
une idée ?
j'avais opter pour la deuxieme solution
Maintenant il ne me reste plus qu'a mettre mon script EXPECT dans la crontab..Mais ça marcje pas
une idée ?