Eu uso scripts expect para automatizar os logins (especialmente porque tenho que passar por uma caixa de jumb e inserir um chroot e muitas senhas devem ser inseridas) e fiz alguns "ajustes" na configuração do cssh. Então, eu tenho esse "script principal" na minha pasta bin que, devido ao "nome / alias do servidor", leva-me ao servidor que desejo e para onde quero.
No ~ / .clusterssh / config, configurei o parâmetro "ssh" para apontar para o meu script, também "ssh_args" deve ser definido como algum argumento inócuo / falso, é porque o cssh tem sua lista de argumentos padrão, se deixado vazio na verdade a lista padrão acabará sendo no script.
Portanto, o script (em cada janela / terminal) receberá esses argumentos e 1 dos argumentos fornecidos ao cssh, o script que recupera de um arquivo para o servidor especificado, as credenciais definidas e as etapas que ele deve executar para chegar onde Eu quero, então ele chama o "código esperado" com todos esses dados.
~ / .clusterssh / config
ssh=/home/user/bin/qs.sh
ssh_args=-a
qs.sh
#!/bin/bash
export PATH=~/bin:$PATH
shift
case $1 in
q4|q5|q6|q7|q8|q9)
essh user1@axt$1
### essh it's some little bash script that does the things I said before and in the end it launches the expect
;;
q1|q2|q3)
essh axtr@axt$1
;;
*)
echo "GOOH"
esac
então eu costumo chamá-lo com algo assim
# cssh q4 q5 q6 q7
está funcionando também com "aliases de cluster" com o cluster "qAll q4 q5 q6 q7" posso chamar com cssh qAll
Espera que ajude mais alguém.
pssh
? Você precisa de um programa paralelo ou apenas um para gerenciar vários servidores SSH?