De alguma forma, eu consegui fechar uma janela da tela sem a tela 'perceber', para que a sessão ainda seja marcada como attached
. Isso me impede de anexar novamente a esta sessão. O que eu posso fazer?
me@iupr-serv8:~$ screen -r
There are several suitable screens on:
25028.pts-19.XXX-serv8 (01/05/2012 07:15:34 PM) (Attached)
24658.pts-19.XXX-serv8 (01/05/2012 07:11:38 PM) (Detached)
24509.pts-19.XXX-serv8 (01/05/2012 07:10:00 PM) (Detached)
18676.pts-5.XXX-serv8 (01/02/2012 06:55:33 PM) (Attached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.
me@XXX-serv8:~$ screen -r 25028
There is a screen on:
25028.pts-19.XXX-serv8 (01/05/2012 07:15:33 PM) (Attached)
There is no screen to be resumed matching 25028.
[atualizar]
No final, descobri que a sessão não foi perdida, mas o ID da primeira sessão é 0
. A segunda sessão que possui o ID 1
.
terminal
gnu-screen
Framester
fonte
fonte
-d -r
opções juntas forçarão a anexar essa sessão.screen -x
para que eu possa conectar de vários locais ao mesmo tempo. Obviamente, se você fechar uma janela acidentalmente, parece-d -r
melhor apenas manter as coisas arrumadas.Há uma tela ligada:
1234.somescreensession (em anexo)
Não há uma tela a ser retomada correspondente à sessão 1234.somescreens.
Aqui está uma maneira simples de recuperar a sessão de tela.
fonte
Tive o mesmo problema depois que minha conexão ssh foi fechada inesperadamente com a mensagem
Write Failed: broken pipe
enquanto eu tinha uma sessão de tela anexada. No entanto, não foi possível recuperar a sessão da tela usando qualquer um dos comandos acima. Observe que eu uso a seguinte versão:Aparentemente, ainda havia uma instância de
sshd
execução, o que me impedia de desconectar e reconectar a sessão. Depois de identificar aPID
instância apropriada desshd
ekill
ing, pude me reconectarscreen -r
.Apenas para obter informações: você definitivamente encontrará mais de um
sshd
demônio, um corresponderá ao seu login atual e outro pertencerá àscreen
sessão obsoleta (de fato, pode haver vários outros programas emsshd
execução pertencentes a vários outrosscreen
).fonte
Algumas vezes as várias telas estão sendo executadas em segundo plano.
Eles podem ser retomados por:
Para obter a tela, primeiro execute e
screen -R
, em seguida, você verá todos os PIDs em execução da telascreen -r [pid]
.fonte