화면이 활성화되어 있지만 /var/run/screen에 소켓이 없습니다.

화면이 활성화되어 있지만 /var/run/screen에 소켓이 없습니다.

Centos 7을 통해 실행되는 게임 서버가 있습니다 screen.

게임 서버가 실행 중인지 확인할 수 있고 클라이언트를 사용하여 연결할 수 있으며 ps faux다음과 같은 출력이 제공됩니다.

steam    10111  0.0  0.0 127904  3028 ?        Ss   Jul09   0:00 SCREEN
steam    10112  0.0  0.0 115444  3548 pts/2    Ss   Jul09   0:00  \_ /bin/bash
steam    16558  0.0  0.0 113180  2700 pts/2    S+   Jul09   0:00      \_ /bin/bash ./avorionsrv.sh
steam    16564  4.1  5.7 2276908 944748 pts/2  Sl+  Jul09 234:32          \_ ./bin/AvorionServer --gala[...]

그러나 해당 화면 세션에 다시 연결할 수 없습니다("steam" 사용자에 의해 시작됨).

[steam@atlantis ~]$ screen -r 
There is no screen to be resumed.

화면 목록을 가져오려고 하면 "콘센트를 찾을 수 없음"이 표시됩니다.

[steam@atlantis ~]$ screen -ls
No Sockets found in /var/run/screen/S-steam.

루트 사용자에게도 같은 일이 발생합니다. find스크린 소켓 디렉토리에 아무 것도 없다고 알려줍니다.

┌─(/root)──────────────────────────────────────────────────(ROOT@atlantis:pts/0)─┐
└─(11:54:05)──> find /var/run/screen                             <──(Fri 13 Jul)─┘
/var/run/screen
/var/run/screen/S-root
/var/run/screen/S-steam

해당 화면에 다시 연결하는 방법에 대한 아이디어가 있나요?

답변1

screen소켓 파일이 아래에서 제거된 것 같습니다 screen. 다음을 사용하여 신호를 보내 screen재생성을 트리거 할 수 있습니다.SIGCHLDkill

$ kill -CHLD 30860
$ ls /var/run/screen/S-username/
30860.pts-4.localhost

여기서 PID 30860은 PID입니다 screen. 다른 방법은 다음 FAQ에 강조되어 있습니다.보관된 젠투 위키 FAQ.

인용하다

관련 정보