Mata una sesión ssh que no responde sin cerrar el terminal

110

¿Hay alguna manera de desconectarse de una sesión SSH que no responde sin matar a toda la terminal? Específicamente estoy usando konsole, y la máquina con la que estoy trabajando a veces se cuelga, pero en realidad no muere (por lo tanto, corta la conexión). Entonces SSH simplemente se cuelga y tengo que cerrar la terminal y abrir una nueva para intentar volver a ingresar a ella o hacer cualquier otra cosa. ¿Hay alguna manera de ctrl + c efectivamente fuera de una sesión ssh?

Falmarri
fuente

Respuestas:

150

Una forma es usar el carácter de escape ssh. Por defecto, esto es "~", pero se puede configurar manualmente con la -eopción al invocar ssh o mediante EscapeCharsu configuración ssh. Para matar la sesión bloqueada, esto a menudo funcionará:

~.

Como señaló Gilles, esto solo se reconoce inmediatamente después de golpear Enter.

Steven D
fuente
25
En realidad, esto funcionará independientemente de lo que esté sucediendo en la máquina remota. Lo que has experimentado es que ~solo está activo inmediatamente después de presionar Enter (de lo contrario sería demasiado intrusivo).
Gilles
3
Perfecto, desearía que esto se documentara mejor en alguna parte, nunca he visto usar esto antes
Falmarri
44
En (al menos) teclados portugueses toque dos veces ~y luego.
rsilva4