ssh -t
parece funcionar como eu queria.
Estou desenvolvendo com o vi sobre o ssh.
Meu problema é que às vezes eu perco minha conexão ssh por causa da minha pobre conexão wi-fi e processos anteriores (como "top", "rails c", etc ...) não estão sendo mortos corretamente.
Então, após alguns instantes, recebo esses processos a 100% do uso da CPU (não sei exatamente por quê) e preciso matá-los manualmente.
Como eu não sou o único desenvolvedor, ele pode ficar muito confuso, então meu chefe me pediu para encontrar uma solução.
Como eu faria isso?
Existem várias maneiras de contornar isso:
A segunda opção é a mais fácil com screen
ou tmux
.
Após a conexão ter caído, reconecte-se, faça login novamente e retome sua sessão de tela / tmux e continue trabalhando onde você saiu. (Para a tela use screen -r
para continuar).
Se você já usou o desktop remoto no Windows, então você pode comparar isso com a retomada de uma sessão RDP desconectada.
Se você estiver usando o ssh com uma conexão não confiável, você pode querer experimentar o mosh: link
Mosh foi escrito exatamente para esse propósito. Note que você precisa instalá-lo nos dois lados.