Connection a plusieurs serveurs distant, lancer script et recuperer
Bonjour a tous,
Petite questions sur du script shell.
Je souhaiterais creer un script qui se connecte a un pool de serveur distant, lance un script qui est sur le serveur local (prealablement copier sur le serveur distant), executer le script et recuperer l'output sur le serveur local.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
| #!/bin/sh
username=<username>
password=<password>
pathToUse= /tmp/
SERVERS="server1 server2 server3 ..."
for b in $SERVERS
do
ftp $b -u $username -pwd $password
cd $pathToUse
put script1.sh
exit
OUTPATH=./output-for-
OUTFILENAME=${OUTPATH}${b}.txt
touch $OUTFILENAME
set force_conservative 1;
set timeout 60
spawn ssh -l $username $b
expect "password: $"
send "$password\r"
/tmp/script1.sh >> $OUTFILENAME
exit
done |
Pensez vous que ceci marchera et existe t'il des moyens plus efficaces?
Merci d'avance