Pergunta

Eu tenho o que é provavelmente uma questão relacionada terminal muito simples. Estou correndo Ubuntu 8.10 Intrepid Ibex, usando o Gnome, e muitas vezes eu abrir um terminal com base em sessão ssh apenas para tê-lo deixado cair em algum momento mais tarde. Assim que a sessão for interrompida a terminal de se tornar inutilizável, obviamente, porque a conexão de rede foi descartada.

Existe uma maneira de re-inicializar a sessão, ou até mesmo reverter para um terminal local de trabalho?

No Windows, usando massa de vidraceiro, quando isso acontece, eu posso clicar com o botão direito e selecione o reinício da sessão, e não é necessário abrir um novo terminal, no entanto, sob linux minha falta de compreensão sobre esta sujeito tem me levar a sempre perto do terminal extinta, e reiniciar um novo a partir do zero. Eu gostaria de aprender uma nova e útil truque se há um lá fora.

Além disso, eu encontrei o seguinte post que está redigido de forma muito semelhante ao meu,

< a href = "https://stackoverflow.com/questions/474967/automatically-or-more-easily-"> automaticamente (ou mais facilmente) reconectar a uma sessão de tela após a interrupção da rede reconectar-to-a-tela-session-após-network-interr

No entanto, tanto quanto eu posso dizer, este é um tema diferente.

Foi útil?

Solução

Você quer usar a sua fuga SSH . Por padrão é '~' e ~. irá encerrar sua conexão.

A questão é ligada ao é sobre tela, que é útil para retomar a sua sessão remota uma vez que você usar o caractere de escape para matar seu processo ssh local e reconexão.

Outras dicas

Primeiro uso ~. para desconectar sua conexão ssh localmente. Isso faz com que você volta a um terminal local de trabalho. Você poderia também você um outro terminal para matar o comando apropriado ssh.

A fim de manter seu estado remoto você deve usar screen como previamente sugerido.

Recentemente eu descobri sobre mosh que é um cliente shell resumable baseados em UDP interessante. Ele usa ssh para inicializar a conexão, e provavelmente necessidades Mosh instalado no servidor (e UDP acesso entre o cliente e servidor), no entanto, ele pode se recuperar de desconexões e muda IP do cliente.

Para ter sua utilizável terminal local novamente, você pode usar o reset comando.

Para executar um comando em um terminal virtual você pode anexar / destacá você pode usar ecrã ou tmux . uso típico para ecrã :

$ screen -S somename
screen$ some-console-command
...
^ad

Você desanexar do ecrã por ctrl digitação + um, em seguida, d

Em seguida, você pode listar a sessão e anexar a ele

$ screen -ls
$ screen -dr somename
screen$
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top