O script que utilizo para acessar várias maquinas via ssh utilizando
autenticação normal se encontra nesse link:
http://pastebin.com/BTXDxvLU
Espero que possa ser útil para alguém
Att,
Lawrence Waclawiak escreveu:
> A solução do Fabricio é a que funcionou
>
> ssh r...@${vetor[$zero]} "df && echo && free -m && echo"
>
> Porém eu aconselho fortemente substituir o "&&" por " ;", pois usando
> o && se um comando der errado os outros não são executados.
>
> Veja os exemplos:
>
> # Com todos os comando executados com sucesso e usando "&&"
> l...@lbw-laptop:~/tmp$ ssh [email protected] "df && echo && free -m &&
> echo"
> Filesystem 1K-blocks Used Available Use% Mounted on
> /dev/sda2 29753588 7312640 20905136 26% /
> /dev/sda4 167662204 78348136 80659856 50% /var
> /dev/sda1 101086 17781 78086 19% /boot
> tmpfs 4087008 0 4087008 0% /dev/shm
>
> total used free shared buffers cached
> Mem: 7982 7924 57 0 373 6541
> -/+ buffers/cache: 1010 6972
> Swap: 8997 0 8997
>
> # Com o df passando um argumento inválido e usando "&&"
> l...@lbw-laptop:~/tmp$ ssh [email protected] "df --naoexiste && echo &&
> free -m && echo"
> df: unrecognized option `--naoexiste'
> Try `df --help' for more information.
> l...@lbw-laptop:~/tmp$
>
> # O mesmo de cima mas usando o ";"
> l...@lbw-laptop:~/tmp$ ssh [email protected] "df --naoexiste ; echo ;
> free -m ; echo"
>
> total used free shared buffers cached
> Mem: 7982 7937 45 0 373 6540
> -/+ buffers/cache: 1023 6958
> Swap: 8997 0 8997
>
> df: unrecognized option `--naoexiste'
> Try `df --help' for more information.
> l...@lbw-laptop:~/tmp$
>
> Pegou a questão?
>
>
> Thiago Diniz da Silveira escreveu:
>> Bom.. até agora não sei qual solução funcionou..
>>
>> foi colocar os comandos ao lado do comando do ssh? a primeira solução
>> proposta?
>>
>> Também acho que deve ter jeito mais fácil e/ou pronto para fazer isso
>> que
>> ele quer.
>>
>> Em 27 de maio de 2010 15:24, Lawrence Waclawiak
>> <[email protected]>escreveu:
>>
>>
>>> Sua solução funcionou para mim.
>>>
>>> Adicionalmente se não for possivel utilizar as chaves para não pedir
>>> senha pode-se usar um progrma chamado sshpass para passar a senha
>>> para o
>>> ssh, utilizo isso para disparar comandos para várias maquinas que
>>> administro
>>>
>>> Fabricio Candido escreveu:
>>>
>>>
>>>> Luiz, bom dia.
>>>>
>>>> Isso nao seria bem shell mas como vc esta usando ssh, Uma sugestão:
>>>> mude
>>>> as linhas:
>>>>
>>>> ssh r...@${vetor[$zero]}
>>>> df && echo && free -m && echo
>>>> exit
>>>>
>>>> por:
>>>>
>>>> ssh r...@${vetor[$zero]} "df && echo && free -m && echo"
>>>>
>>>>
>>>> Att.
>>>>
>>>> Fabricio Candido
>>>>
>>>> 2010/5/27 Luiz guilherme Nunes Fernandes
>>>> <[email protected]<spinal_df%40yahoo.com.br>
>>>>
>>>>
>>>>
>>>>
>>>>> 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]
>>>>
>>>>
>>>>
>>>> ------------------------------------
>>>>
>>>> ----------------------------------------------------------
>>>> Esta lista não admite a abordagem de outras liguagens de programação,
>>>>
>>> como perl, C etc. Quem insistir em não seguir esta regra será
>>> moderado sem
>>> prévio aviso.
>>>
>>>> ----------------------------------------------------------
>>>> Sair da lista:
>>>> [email protected]<shell-script-unsubscribe%40yahoogrupos.com.br>
>>>>
>>>>
>>>> ----------------------------------------------------------
>>>> Esta lista é moderada de acordo com o previsto em
>>>>
>>> http://www.listas-discussao.cjb.net
>>>
>>>> ----------------------------------------------------------
>>>> Servidor Newsgroup da lista: news.gmane.org
>>>> Grupo: gmane.org.user-groups.programming.shell.brazil
>>>>
>>>> Links do Yahoo! Grupos
>>>>
>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>>
>> [As partes desta mensagem que não continham texto foram removidas]
>>
>>
>>
>> ------------------------------------
>>
>> ---------------------------------------------------------------------
>> Esta lista não admite a abordagem de outras liguagens de programação,
>> como perl, C etc. Quem insistir em não seguir esta regra será
>> moderado sem prévio aviso.
>> ---------------------------------------------------------------------
>> Sair da lista: [email protected]
>> ---------------------------------------------------------------------
>> Esta lista é moderada de acordo com o previsto em
>> http://www.listas-discussao.cjb.net
>> ---------------------------------------------------------------------
>> Servidor Newsgroup da lista: news.gmane.org
>> Grupo: gmane.org.user-groups.programming.shell.brazil
>>
>> Links do Yahoo! Grupos
>>
>>
>>
>>
>
>