De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.


Execução de comandos em múltiplas máquinas

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 30 de Dezembro de 1997

Administradores de sistemas com muitas máquinas com frequência precisam executar o mesmo conjunto de comandos em todas elas simultaneamente.

Um simples laço pode tornar esta tarefa bem simples.

Por exemplo(ksh ou sh):

  # for i in alpha beta gama delta
  > do
  > rsh $i mv /etc/group /etc/group.971221
  > rcp /etc/group $i:/etc/group
  > done

No shell script acima, os comandos serão executados nas máquinas alpha, beta, gama e delta. Os comandos estão sendo executados interativamente e não a partir de um shell script.

Não se esqueça que as máquinas onde os comandos serão executados precisam "confiar" na máquina a partir de onde os comandos serão emitidos (.rhosts ou /etc/hosts.equiv).

Os comandos podem ser quaisquer comandos que você precisar executar.

Outra consideração, dependendo do número de máquinas, é conveniente que todas as máquinas recebam nomes de acordo com alguma convenção para que não fique difícil se lembrar de todas elas, ou pior, que você se esqueça de alguma delas. Uma idéia seria nomear as máquinas como algo do tipo ws1, ws2, ws3, etc. Aí então o shell script poderia ficar parecido com

  # for m in 1 2 3 4 5 6 7 8 9 10
  > do
  > rsh ws$m rm arquivo.txt
  > done

Bem mais simples, não?

Adicionar comentário

* Campos obrigatórios
5000
Powered by Commentics

Comentários

Nenhum comentário ainda. Seja o primeiro!


Veja a relação completa dos artigos de Rubens Queiroz de Almeida