"WriteMessage: 잘못된 파일 설명자"로 인해 화면이 실패합니다.

"WriteMessage: 잘못된 파일 설명자"로 인해 화면이 실패합니다.

입력, 출력 및 오류 스트림을 포함하고 의사 터미널로 리디렉션되는 /dev/ttySAC0(스크린 세션 외부)에서 시작하고 sh로 시작하는 스크린 세션 "main"이 있습니다 . /dev/pts/1 터미널에 연결하고 실행하려고 하면 다음 과 같이 실패합니다./dev/ttySAC0/dev/pts/1screen -r main

WriteMessage: Bad file descriptor

하지만 새 스크린 세션을 생성하면 screen문제가 없습니다. 또한 screen -r main이 스크린 세션에서 실행하면 다른 스크린 세션에서 저장된 세션이 포함된 화면이 표시됩니다. 작동하지 않았지만 작동했습니다.

/dev/pts/1에서 새 세션을 시작 하고 세션을 분리한 후 복원하려고 해도 동일한 오류가 발생합니다.

답변1

실행 screen -d하고 화면을 찾아서 실행하세요 screen -R [screen_name].

답변2

defnonblock on~/.screenrc 파일에 이 줄을 추가해 보세요 .

같은 문제가 발생하기 시작했을 때 문제가 해결되었다는 게시물을 발견했습니다. 그것은 내 것을 고쳤습니다.

답변3

다른 화면과 이름이 같고 그 뒤에 더 많은 텍스트가 있는 화면이 있는 경우 이런 일이 발생합니다. 추가 텍스트 없이 화면 이름이 끊어집니다.

~$ screen -ls
        7385.foo-screen      (02/27/2020 12:03:41 AM)        (Detached)
        7296.foo-screen-2    (02/27/2020 12:00:48 AM)        (Detached)

일하다:

~$ screen -r foo-screen-2 

실패하다:

~$ screen -r foo-screen 
WriteMessage: Bad file descriptor

일하다:

~$ screen -r 7385.foo-screen 

관련 정보