Se bem entendi, seu problema não me parece script e sim administrativo. Primeiramente não consigo visualizar para que precisaria fazer ssh simultâneo em 100 máquinas, mas supondo que precise fazer algo aproveitando o tunelamento e transferir arquivos por exemplo... O SSH pré-supõe que vá utilizar o terminal, por isso ele está segurando a conexão. O que me ocorre de imediato é: ou abre vários terminais ou vai jogando todo mundo para backgroud, use o "&" no final do ssh, porém não testei se qualquer processo que rode depois de estabelecer a conexão vai rodar, como envio de arquivos por exemplo.
Se quer automatizar tanto esses sshs a ponto de usar vetores na abertura das conexões, vale lembrar que os processos que for desenvolver dentro desta conexão também devem ser capazes de serem automatizados no mesmo nível, como no caso de transferência de arquivos, ou fatalmente vai depender de intervenção humana. ________________________________ De: Luiz guilherme Nunes Fernandes <[email protected]> Para: turma shell <[email protected]> Enviadas: Quinta-feira, 27 de Maio de 2010 12:00:56 Assunto: [shell-script] Problemas ssh Prezados, tudo bem? Estou com o seguinte problema, montei um script, que não funciona corretamente, gostaria que ele fizessse conexão ssh entre umas 100 máquinas aproximadamente. Dentro dos vetores eu iria adicionando os ips de minha rede, os servidores já possuem chaves assimétricas. Gostaria que ele conectasse um por um deles e desconectassem, como seria para eu desconectar no servidor com o próprio script na máquina local. Quando ele se conecta ao primeiro ip, ele não fecha a coneção do ssh. #!/bin/bash #Desenvolvido por Luiz Guilherme Nunes Fernandes rddez="10.10." rdcnd="192.168." #Rede 10.10.0.0 vetor=("$rddez"190.10 "$rddez"190.12) #Rede 192.168.0.0 array=("$rdcnd"10.2 "$rdcnd"10.3) echo "###############" ################################ ########## Rede 10.10 ########## ################################ cont=${#vetor[*]} zero=0 while [ $zero -lt $cont ]; do echo ${vetor[$zero]} ssh r...@${vetor[$zero]} df && echo && free -m && echo exit zero=$[zero + 1] echo "###############" done ################################ ######### Rede 192.168 ######### ################################ contt=${#array[*]} inicial=0 while [ $inicial -lt $contt ]; do echo ${array[$inicial]} ssh r...@{array[$inicial]} df && echo && free -m && echo exit inicial=$[inicial + 1] echo "###############" done Att. Luiz Guilherme Nunes Fernandes [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas]
