Execução remota com SSH e HERE DOCUMENTS descomplicada
Publicado por Andre Miguel (última atualização em 08/12/2009)
[ Hits: 5.639 ]
Tive um problema para executar shell scripts desenvolvidos em BASH script em máquinas remotas, pois o usuário utilizado tinha como shell padrão o C Shell ou o Korn Shell.
Para fazer isso, utilizei conexão SSH, via chave já configurada, evitando ter que recolocar a senha, e o recurso de HERE DOCUMENTS do BASH. Também lancei mão da funcionalidade de "||", que significa que se o comando anterior executado retornou erro, faça outra coisa.
Nesse caso em específico, eu tinha uma série de servidores em que o mesmo arquivo Perl (mesmo conteúdo, mesma finalidade), tinha nomes ligeiramente diferentes e versões velhas e desatualizadas (muita gente pondo a mão, se é que você me entende...).
Ex:
$ runall.pl
e
$ runalls2.pl
Veja abaixo que o recurso de "||" me serviu para saber qual dos dois Perl scripts eu deveria executar.
O script abaixo foi desenvolvido em BASH para "adiantar o serviço" de administrador de sistemas. É claro que há maneiras diferentes de se fazer, mas vale a dica. Ele está do jeito exato que está no arquivo, com <ENTER> dado no lugar mais apropriado para sua execução, apenas alterei nomes de programas e diretórios.
#/bin/bash cd ~/script for i in `cat servers.list`; do ssh $i "bash -c \"`cat <<-EOF ((~/run*2.pl; ~/run*2.pl out) || (~/run*.pl; ~/run*.pl out)) 2>/dev/null |strings; EOF`\""; for j in $(ssh $i "bash -c \"`cat <<-EOF ((~/run*2.pl; ~/run*2.pl out) || (~/run*.pl; ~/run*.pl out)) 2>/dev/null |strings |grep location |cut -d '|' -f 2 EOF`\""); do ssh $i "cat $j/../settings/programs/running; echo"; done |sort -u; echo -e "\n\n"; done
Adicionar/Deletar Usuarios Samba/Sistema
Gera estatísticas de tráfego de pacotes nas interfaces de um servidor linux via SNMPv3.
Backup individual de contas no ZIMBRA MAIL
Nenhum coment�rio foi encontrado.
O que é o THP na configuração de RAM do Linux e quando desabilitá-lo
Comparação entre os escalonadores BFQ e MQ-Deadline (acesso a disco) no Arch e Debian
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Como unir duas coleções de ROMs preservando as versões traduzidas (sem duplicatas)
Como instalar o Telegram Desktop no Ubuntu 24.04
Overclocking Permanente para Drastic no Miyoo Mini Plus
Problemas de chaves (/usr/share/keyrings) no Debian
Converter os repositórios Debian para o novo formato com as chaves
eu preciso saber uma coisa sobre os games no linux (3)
eu preciso saber uma coisa sobre os games no linux (1)
Problema com audio apos upgrade (1)