SSH를 통해 서버에 로그인하기 위해 putty를 사용합니다. 그러면 로컬에서 세션이 생성됩니다. 즉, PuTTY에서 연결을 끊으면 세션이 손실됩니다.
세션을 계속 실행하고 Putty나 다른 클라이언트에서 액세스할 수 있는 방법이 있습니까? 아니면 이 문제를 해결하는 데 도움이 될 수 있는 다른 프로토콜이나 도구가 있습니까?
답변1
도구화면당신을 도울 수 있는 도구입니다. 새로운 쉘을 실행합니다. 이 새 쉘은 터미널 연결이 끊어져도 종료되지 않으며 다시 연결한 후 이 쉘에 연결할 수 있습니다. 터미널 연결 전반에 걸쳐 세션을 유지하는 사용법은 간단합니다. 새 세션 유형 시작
$ screen
이제 Putty를 종료할 수 있습니다. 다시 연결하면 기존 세션에 연결할 수 있습니다.
$ screen -r
실제로화면더 많은 일을 할 수 있습니다. 바라보다https://www.gnu.org/software/screen/manual/screen.html
답변2
SSH 연결 손실을 방지하기 위해 Putty의 로컬 연결 끊김을 정말로 방지하려면 cygwin에 설치 tmux
(또는 ) screen
하고 거기에서 Putty를 시작할 수 있습니다. 이를 통해 Putty와의 연결을 끊고( 에서 연결을 끊음 ) tmux
다시 연결한 후 기존 ssh
연결(tmux`에 대한)을 계속 사용할 수 있습니다. 이는 명령줄에서 Putty를 시작할 수 있다고 가정합니다. 그렇지 않은 경우 SSH 클라이언트를 사용해야 합니다.
이는 연결 끊김으로부터 보호되지 않으므로 ssh
최소한 TCPKeepAlive
합리적인 연결을 설정했는지 확인하십시오 ServerAliveInterval
.
또한 tmux
다른 예방 조치(네트워크 연결 해제 등)에도 불구하고 연결이 끊어진 후 명령줄 프로그램(셸 또는 실행 중인 모든 프로그램)에 다시 연결할 수 있도록 서버 측에서 이 작업을 실행합니다. 후자는 서버의 세션에 다시 연결할 수 있으므로 필요에 따라 충분할 수 있습니다. 퍼티를 사용하고 SSH 연결을 유지하는 로컬 세션(어쨌든 보장되지는 않음)은 일반적으로 별로 재미가 없습니다.