Você pode tentar o aplicativo ClusterSSH:
Toda manhã eu tenho que abrir muitas sessões remotas no trabalho em uma distribuição linux, rotular a sessão-Windows, digitar ssh user @ server e cd em um diretório nesse servidor. Quero economizar tempo e fazer isso da seguinte maneira automaticamente:
Abrir permite dizer cinco diferentes terminais de sessão remota do Windows dentro de um único quadro, tê-los automaticamente rotulados "Windows, Windows, etc", tê-los conectando a um servidor remoto via ssh e finalmente cd para um determinado diretório nesses servidores remotos, tudo com um único comando de terminal ou clique de gui.
Quais são as formas de alcançar isso?
Você pode tentar o aplicativo ClusterSSH:
Um script bash com algo como isto deve funcionar contanto que o n-term e o gnome-terminal tenham uma sintaxe similar. Você pode obter o valor da geometria colocando manualmente uma janela onde você quer e então rodando o xwininfo.
Felicidades.
/ usr / bin / terminal-gnome --geometry 95x9 + 2 + 844 --window --title = SERVER1 -e "ssh -t usuá[email protected] 'cd / usr / local / bin; bash'" --active --tab --title = SERVER2 -e "ssh -t usuá[email protected] 'cd / usr / local / bin; bash'" &
Você pode escrever um script simples:
#!/usr/bin/bash
xterm -T "Window 1" -e "ssh -t user@server1 'cd /usr/share; othercmd; bash -i' "&
xterm -T "Window 2" -e "ssh -t user@server2 'cd /usr/share; othercmd; bash -i'"&
xterm -T "Window 3" -e "ssh -t user@server3 'cd /usr/share; othercmd; bash -i'"&
xterm -T "Window 4" -e "ssh -t user@server4 'cd /usr/share; othercmd; bash -i'"&
Isso gerará para os xterms (usuário outro programa de terminal conforme desejado), cada um efetuando login nos servidores especificados (server1-4) e executando os comandos especificados (um cd e outro comando) e deixando o shell especificado (bash) em execução. O título é definido com a opção -T (para xterm, outros emuladores de terminal podem ... ter opções diferentes).
Não é bonito, mas também não é horrível.
Você também pode usar a tela em vez de xterms e provavelmente fazer tudo isso em um arquivo screen.rc específico. O programa XFCE Terminal (meu favorito atual, utilizável em qualquer outro DE ao lado do XFCE) aceita as mesmas opções de linha de comando. O terminal Gnome não. Não tenho certeza sobre o KDE ou outros, mas tenho certeza de que há algo semelhante.
No Terminal XFCE, substitua o script por uma linha como esta:
#!/usr/bin/bash
Terminal --tab -T "Window 1" -e "ssh -t root@flock 'cd /usr/share; bash -i' " --tab -T "Window 2" -e "ssh -t root@treepie 'cd /usr/share; bash -i'" --tab -T "Window 3" -e "ssh -t root@magpie 'cd /usr/share; bash -i'" --tab -T "Window 4" -e "ssh -t root@raven 'cd /usr/share; bash -i'"&
... e você terá uma janela com várias guias marcadas.
É uma questão de gosto, mas eu recomendo strongmente que você procure em tmux
. É um multiplexador de terminais e o seu caso de uso não é exatamente o principal, mas você pode facilmente automatizar a criação de uma sessão com janelas e painéis nomeados e definidos ao seu gosto e simplesmente conectar-se a ele (assumindo a máquina qual tmux
será executada perpetuamente). Alternativamente, você pode escrever um script para criar a sessão ao seu gosto e iniciá-la manualmente. Você também pode fazer isso no momento da inicialização e depois conectar-se a ele. As possibilidades são quase infinitas.
E sim, tmux
permite enviar comandos para as janelas e painéis. Então você é capaz de conseguir tudo isso sem muita complicação. Basicamente, você pode definir um comando para iniciar cada painel com e depois disso enviar strings (não realmente comandos, você também pode tornar tmux
"type" algo no Vim).
Veja as capturas de tela em seu website, ou use uma pesquisa de imagens, e deixe que isso o convença.
secpanel tem ClusterSSH mantém os seus marcadores de host remotos e os títulos das janelas do terminal.