퍼티를 사용하고 신뢰할 수없는 무선 연결을 사용하므로 화면을 사용하여 작업을 계속합니다. 종종 연결이 끊긴 다음 화면을 다시 연결할 수 없습니다. 나는 달려 screen -D -RR
가서 무기한 거기에 앉아있을 것이다. 나는 시도했다 ctrl+z, 내 콘솔 등을 얻기 위해 다음 ps aux | grep screen
다음 kill -9
모든 결과에 대해 다음 screen -D -RR
다시하지만 난 같은 결과를 얻을 수 있습니다. 나는 당신이 언급하고자하는 d와 r의 조합을 시도하지만 여전히 거기에 있습니다. 내 화면이 있으며 아무것도하지 않고 최소한 모든 이력서가 있습니다.
내 스크린 세션을 다시 시작하는 방법에 대한 팁이나 요령이나 아이디어가 있습니까?
답변
활성 화면에 대한 연결을 끊고 다시 연결할 때 이것을 보았습니다. 버그 # 27462 ( “원래 세션이 손실되면 다시 연결이 중단됩니다”)가 문제를 설명합니다. 발생하는 것으로 보이는 화면은 떠날 예정임을 알리는 tty에 알리려고하지만, 연결이 끊어져서 tty가 중단되므로 시간 초과가 발생할 때까지 기다려야합니다 (5 분 이상) 일부 경우에).
문제를 해결하려면 다음과 같이하십시오.
- 어떤 tty가 스크린 세션을 잡고 있는지 파악하십시오.
ps -ef | grep screen | grep pty
- 해당 tty와 연관된 로그인 bash를 찾으십시오.
ps -ef | grep bash | grep $PTY
- 그 배쉬를 죽여
kill -KILL $PID
이로 인해 화면 연결이 올바르게 완료되지 않고 정상적으로 다시 연결할 수 있습니다.
이를 자동화하는 예제 스크립트는 여기 를 참조하십시오 .
답변
화면 세션과 비슷한 문제가있었습니다. 이름을 지정하고 다중 사용자 세션으로 설정했습니다. 내가 찾은 것은 내 세션을 나열하고 있지만 다시 연결할 필요가 없다는 것입니다. 그런 다음 시도했습니다.
screen -x <session_name>
챔피언처럼 작동했습니다!
답변
연결 유형에 관계없이 화면이 다시 나타나지 않는 문제가 있다고 말할 수 없습니다. 내 평소 방법 :
ssh myname@foo
screen -S sessionName
(do my work... get disconnected...)
ssh myname@foo
screen -d (just to make sure anything wasn't left attached)
screen -r sessionName
답변
답변
Soulrce : https://kb.iu.edu/data/ahrm.html
To see your existing screen sessions, enter:
screen -list
This will display a list of your current screen sessions. For instance, if you had one attached screen, you would see:
1636.pts-21.hostname (Attached)
To detach an attached screen, enter:
screen -D
If you have more than one attached screen, you can specify a particular screen to detach. For example, to detach the screen in the above example, you would enter:
screen -D 1636.pts-21.hostname
답변
당신이 나처럼 똑똑하다면 root
, 일반 사용자 계정 으로 시작된 스크린 세션을 재개하려고했습니다 . ls /var/run/screen
나에게 디렉토리를 보여 주면서 이것을 발견했다.root
답변
때때로 같은 문제가 있습니다 (screen -r -d resume not resume, non-responsive). 수정하려면 화면 세션과 관련된 터미널 (tty / pty)을 찾으십시오.
screen -list
There is a screen on:
28176.pts-51.localhost (Attached)
1 Socket in /tmp/uscreens/S-xxxx.
나열된 터미널을 찾으십시오 (이 예에서는 pts-51).
ps axuw | grep 'pts/51' # will vary depending upon how pty's are named
you 12293 0.0 0.2 2148 1128 pts/51 Ss 10:34 0:00 -bash
해당 터미널 (일반적으로 쉘)에서 프로세스를 종료하십시오.
kill 12293
ps를 다시 실행하여 사라 졌는지 확인하십시오. 그렇지 않은 경우 :
kill -9 12293
내 서버 (gnu / linux)에서 때때로 죽을 때까지 -9를 여러 번 죽여야 할 것입니다.
해당 tty의 모든 프로세스가 끝나면 화면이 올바르게 다시 시작됩니다.
screen -r -d