Anteriormente me he vuelto a conectar a una sesión de pantalla de larga duración con screen -dr control. Sin embargo, a veces este comando no se volverá a conectar a la pantalla y en su lugar se bloqueará para siempre (más de 10 minutos después de lo cual aborté). Esto solo ocurre cuando la conexión SSH se cae inesperadamente y no cuando la pantalla se desconecta correctamente Ctrl-A d. Otros interruptores, como screen -xo screen -D -RRque tampoco funcionan.
Esta publicación sugiere eliminar el PTY que contiene la sesión de pantalla, lo que hará que la pantalla complete su desconexión. Sin embargo, simplemente mata el shell desde el que screen -dr controlse llamó.
Por ejemplo:
$ ps -ef | grep control | grep -v grep
nomad 7387 7109 0 13:05 pts/50 00:00:00 screen -dr control
nomad 15299 1 0 Nov27 ? 00:13:47 SCREEN -S control
$ ps -ef | grep bash | grep 'pts/50'
nomad 7109 7108 0 12:49 pts/50 00:00:00 -bash
La publicación vinculada sugiere matar el bashproceso con PID 7109. Esto también matará el screen -dr controlproceso con PID 7387. Después, todavía no puedo conectarme a la pantalla.
El proceso SCREEN -S controlque inició la sesión de pantalla tiene initcomo padre el que obviamente no puedo matar.
¿Hay alguna manera de volver a adjuntar a la sesión de pantalla bloqueada?
Actualización: Esto sucede en CentOS 6.4 usando el kernel 2.6.32-358.6.1.el6.x86_64. Todos los shells son bash versión 4.1.2 (1) -release.
fuente

screen -lsdice en esos casos "colgantes"?screen -d -r <session>significa "separar y recuperar", por lo que no haberlo separado de primera mano no debería importar. (Y por hacerlo a menudo, no ...)Respuestas:
Creo que deberías intentarlo
la próxima vez también: la invocación enojada (mayúscula) debería obligarlo a desconectar esa otra sesión que está realizando su salto de red intermedio.
fuente
Como lo sugirió Jens Timmerman, la razón principal de este extraño comportamiento fue que me estaba conectando al servidor remoto usando SSH ProxyCommand y
ncat. Después de eliminar elncaten la máquina intermedia, puedo volver a conectar a la sesión de pantalla.fuente
Si este es un problema frecuente, también podría considerar usar mosh como reemplazo de ssh:
http://mosh.mit.edu
fuente