이전에와 함께 장시간 실행되는 화면 세션에 다시 연결했습니다 screen -dr control
. 그러나 때때로이 명령은 화면에 다시 연결되지 않고 영원히 중단됩니다 (10 분 이상 중단 한 후). 이것은 SSH 연결이 예기치 않게 끊어졌을 때만 발생하며 화면이로 올바르게 분리되지 않은 경우에 발생합니다 Ctrl-A d
. 다른 스위치와 같은 screen -x
또는 screen -D -RR
작동하지 않습니다.
이 게시물 에서는 화면 세션을 보유한 PTY를 종료하여 화면 연결이 끊어 지도록 제안합니다. 그러나 그것은 단순히 screen -dr control
호출 된 쉘을 죽 입니다.
예를 들면 다음과 같습니다.
$ ps -ef | grep control | grep -v grep
nomad 7387 7109 0 13:05 pts/50 00:00:00 screen -dr control
nomad 15299 1 0 Nov27 ? 00:13:47 SCREEN -S control
$ ps -ef | grep bash | grep 'pts/50'
nomad 7109 7108 0 12:49 pts/50 00:00:00 -bash
링크 된 게시물은 bash
PID 7109로 프로세스를 종료 하도록 제안합니다. 이것은 PID 7387로 screen -dr control
프로세스를 종료합니다. 그 후에도 여전히 화면에 연결할 수 없습니다.
SCREEN -S control
스크린 세션을 시작한 프로세스 init
는 부모로서 분명히 죽일 수 없습니다.
중단 된 화면 세션에 다시 연결하는 방법이 있습니까?
업데이트 : 이것은 커널 2.6.32-358.6.1.el6.x86_64를 사용하는 CentOS 6.4에서 발생합니다. 쉘은 모두 bash 버전 4.1.2 (1)-릴리스입니다.
답변
나는 당신이 시도해야한다고 생각
screen -DR
다음 번에도 성난 (대문자) 호출로 인해 중간 넷캣 홉이 보유한 다른 세션의 연결을 끊어야합니다.
답변
Jens Timmerman이 제안한 것처럼이 이상한 동작의 궁극적 인 이유는 SSH ProxyCommand 및를 사용하여 원격 서버에 연결했기 때문 ncat
입니다. ncat
중간 컴퓨터에서를 종료 한 후 화면 세션에 다시 연결할 수 있습니다.