Você pode emitir a separação antes de anexar de outro terminal, por exemplo:
$ screen -list
$ screen -d -r ...
Eu uso o ambiente de desktop GNOME no FreeBSD. Eu tinha várias abas no terminal GNOME 2.26 e em cada aba eu tinha uma sessão screen
(4.00.03) em andamento. Eu entrei em um dos servidores remotos com SSH e cat
um arquivo grande e depois de um tempo, a sessão screen
na guia do terminal GNOME foi interrompida. A saída de pstree
é a seguinte:
$ pstree -p 1700
-+= 00001 root /sbin/init --
\-+- 01506 martint gnome-terminal
\-+= 01586 martin bash
\-+= 01699 martin screen
\-+= 01700 root screen
Existem dezenas de processos sob o PID 1700, que todos, incluindo o PID 1700, estão em estado inativo:
$ ps -p 01700 -o command,state
COMMAND STAT
screen Is
$
Desconectei a sessão SSH do servidor remoto e verifiquei também se a rolagem screen
está desbloqueada. Existe uma maneira de restaurar esta screen
sessão?
Você pode emitir a separação antes de anexar de outro terminal, por exemplo:
$ screen -list
$ screen -d -r ...
Tags gnu-screen