Como pular o host em particular no ssh?

1

Eu configurei a autenticação baseada em chave para acessar todas as máquinas do meu cliente usando o ssh. No entanto, se eu executar anyscript nesses clientes e supor que, se determinados hosts estiverem inativos, o terminal trava nessa sessão e levará muito tempo para ir para os próximos hosts. Existe alguma outra maneira de resolver este problema? Ou é possível pular o host que está desativado para que ele possa ir com o próximo host? Eu estou usando o Ubuntu 11.04. Alguém pode me ajudar? Agradecemos antecipadamente.

    
por karthick87 11.12.2011 / 11:54

2 respostas

2

Dado seu comentário, sugiro algo assim:

while read -r line
do
    echo "$line" > sh scriptname.sh &
done < "$file"

wait
    
por Martin Ueding 11.12.2011 / 12:16
0

A resposta do @ queueoverflow está correta, mas eu achei desnecessariamente complicado. Talvez isso seja mais fácil de ler?

ssh server1 do something &
ssh server2 do something at the same time &
ssh server3 do yet more things &
wait

O & significa iniciá-lo em segundo plano e wait significa travar até que todas as tarefas em segundo plano tenham sido encerradas. Todas as tarefas serão executadas em paralelo, e todo o processo deve levar o tempo da tarefa mais longa, e não mais.

    
por ams 13.12.2011 / 17:15