SSH 세션을 닫거나 다시 시작하면 해당 세션에서 실행 중인 프로그램이 종료됩니까?

SSH 세션을 닫거나 다시 시작하면 해당 세션에서 실행 중인 프로그램이 종료됩니까?

웹 콘솔을 사용하여 aws 인스턴스에 SSH로 연결하고 있습니다. 그런 다음 xrdp 세션을 시작하지만 세션은 ssh를 통해 진행되지 않습니다.

그러나 이 ssh 세션을 다시 시작하거나 중지하면 이 세션 내에서 실행한 모든 항목도 종료됩니다(예: xrdp). "&"를 사용하여 백그라운드로 분기했더라도 이것이 예상된 동작인지 아니면 알 수 없습니다. 브라우저 세션을 통한 SSH와 관련됩니다. 이 문제를 해결하고 이 세션 내에서 각 프로그램을 종료하지 않는 아이디어를 주시면 감사하겠습니다. :)

답변1

이는 터미널 제어 프로세스가 종료되면 SIGHUP모든 하위 프로세스에 전송되어 터미널이 끊어졌음을 알리기 때문에 예상되는 동작입니다. 자식 프로세스가 처리하는 방법은 SIGHUP자식 프로세스에만 달려 있습니다. 프로세스를 백그라운드에 두는 것은 신호를 차단하지 않으며 터미널에서 하위 프로세스를 분리할 뿐입니다. 차단하려면끊다 신호예를 들어 를 사용하여 프로그램을 실행해야 합니다 nohup. nohup myprogram &. 대부분의 경우 해당 작업을 수행해야 합니다.

관련 정보