Estoy trabajando en un servidor remoto de Debian Jessie. Comencé una sesión de pantalla, comencé a ejecutar un script y luego me desconecté por un tiempo de espera de la red.
Ahora he vuelto a iniciar sesión y quiero reanudar la sesión.
Esto es lo que veo cuando enumero pantallas:
$ screen -ls
There are screens on:
30608.pts-8.myserver (11/03/2015 08:47:58 AM) (Attached)
21168.pts-0.myserver (11/03/2015 05:29:24 AM) (Attached)
7006.pts-4.myserver (10/23/2015 09:05:45 AM) (Detached)
18228.pts-4.myserver (10/21/2015 07:50:49 AM) (Detached)
17849.pts-0.myserver (10/21/2015 07:43:53 AM) (Detached)
5 Sockets in /var/run/screen/S-me.
Parece que estoy conectado a dos pantallas a la vez.
Ahora quiero reanudar la sesión que estaba ejecutando antes, para ver los resultados de mi script:
$ screen -r 30608.pts-8.myserver
There is a screen on:
30608.pts-8.OpenPrescribing (11/03/2015 08:47:58 AM) (Attached)
There is no screen to be resumed matching 30608.pts-8.myserver.
¿Por qué no puedo volver a adjuntar?
Tengo el mismo problema con la otra pantalla:
$ screen -r 21168.pts-0.myserver
There is a screen on:
21168.pts-0.OpenPrescribing (11/03/2015 05:29:24 AM) (Attached)
There is no screen to be resumed matching 21168.pts-0.myserver.
fuente
screen -x
,screen -rd
es adjuntarlo después de haberlo desconectado de cada terminal al que estaba conectado. En el caso del OP, estoy de acuerdo en que este último probablemente sea el preferido, pero en el caso general, no necesariamente. Generalmente uso-xR
para adjuntar o crear si no hay nada que adjuntar.Según el manual , puede "reanudar" solo las pantallas separadas :
Lo que quieres es esta opción:
fuente
-x
una sesión todavía se adjuntará 'en alguna parte'. Para hacerse cargo de la sesión por completo, se debe usar -d | -D (opciones de desconexión) junto con -r | -R (opciones de reconexión).Adjunto a la pantalla con opciones
-rD
Del manual:
fuente