Como faço para reconectar uma sessão de tela quando o soquete está lá, mas a tela não a usa?

4

Eu vi esta pergunta e esta questão , mas nenhum deles se aplica a mim . Eu tenho o arquivo de soquete em / var / run / screen e eu possuo ele - mas a lista de tela não reconhece e permite que eu me conecte. Como posso recuperar esta sessão?

tom@host~ $ ls /var/run/screen/S-tom/
total 0
prw------- 1 tom people 0 Jul  2 19:07 3954.pts-0.host

tom@host ~ $ screen -list
No Sockets found in /home/tom/.screen.
    
por Tom Ritter 05.07.2012 / 16:16

1 resposta

6

Você pode definir a variável de ambiente SCREENDIR como /var/run/screen . Você deve então poder listar e conectar.

Assumindo o shell compatível com sh :

export SCREENDIR="/var/run/screen"

De man 1 screen

ENVIRONMENT
   COLUMNS        Number of columns on the terminal (overrides termcap entry).
   HOME           Directory in which to look for .screenrc.
   LINES          Number of lines on the terminal (overrides termcap entry).
   LOCKPRG        Screen lock program.
   NETHACKOPTIONS Turns on nethack option.
   PATH           Used for locating programs to run.
   SCREENCAP      For customizing a terminal's TERMCAP value.
   SCREENDIR      Alternate socket directory.
   SCREENRC       Alternate user screenrc file.
   SHELL          Default shell program for opening windows (default "/bin/sh").
   STY            Alternate socket name.
   SYSSCREENRC    Alternate system screenrc file.
   TERM           Terminal name.
   TERMCAP        Terminal description.
   WINDOW         Window number of a window (at creation time).
    
por 05.07.2012 / 16:57