Se o seu principal problema é que você precisa digitar ssh remotehost
toda vez que abrir uma nova janela, a opção default-command
session pode ser uma solução alternativa.
Ele executa automaticamente o comando especificado ao abrir novas janelas nas sessões para as quais você o definiu.
Uma configuração simples em .tmux.conf
:
bind-key C-r new-session ssh remotehost \; set-option default-command "ssh remotehost"
Essa ligação de chave Ctrl-r
cria uma nova sessão em que todas as janelas abertas recentemente executam ssh remotehost
em seu nome.
Você pode escolher os hosts para conectar na hora da criação da sessão com as configurações abaixo:
bind-key C-r command-prompt "new-session -s %1 ssh %1 \; set-option default-command \"ssh %1\""
Este pergunta-lhe o host que você quer fazer ssh
em cada criação de sessão (não em cada criação de janela) e inicia a sessão dedicada a esse host.
Demora pouco tempo para executar muitos ssh
se você habilitar a multiplexação SSH em sua configuração ssh.
O exemplo .ssh/config
está abaixo:
Host remotehost
ControlMaster auto
ControlPath ~/.ssh/mux-%r@%h:%p
ControlPersist 10
Observe que essa configuração do tmux não cria sessões do tmux em hosts remotos. Se a conexão ssh for perdida, as janelas do tmux afetadas nunca retornarão.