원격 세션에 연결하고 로컬로 서버 출력을 얻는 방법

원격 세션에 연결하고 로컬로 서버 출력을 얻는 방법

따라서 클라우드에 내 애플리케이션을 실행하는 원격 서버가 있고 테스트/적용 테스트가 필요할 때 로컬에서 ./gradlew-를 실행합니다. 스크립트를 실행하고 > VM(내 애플리케이션)에 연결하고 > 내 VM에서 테스트를 시작합니다. 내 로컬 터미널에서 ./gradle 출력을 볼 수 있으므로 테스트가 끝나면 서버는 Gradle 세션을 통해 내 로컬 터미널에 결과를 반환합니다. 그러나 장기간 테스트 중에 VM에 대한 연결이 끊어지거나 어떤 이유로 인터넷이 끊어지면 Gradle 세션의 연결이 끊어지고 종료되어 로컬에서 자동으로 결과가 제공되지 않습니다. 인터넷에 다시 연결하면 Gradle 세션을 복원할 수 있는 방법이 있나요?

답변1

Gradle 세부 사항은 모르지만 다음은 연결이 끊어졌는지 여부에 관계없이 원격 프로세스를 실행하는 데 사용할 수 있는 일반적인 방법입니다.

  • SSH원격 컴퓨터에 들어가세요
  • (tmux/screen) 및/또는 nohup 프로세스
  • (ssh 세션에서 분리됨)
  • SCP/rsync는 원격 서버의 결과를 로컬 컴퓨터에 동기화합니다.

위의 일반적인 예는 다음과 같습니다.

local> $ ssh user@remoteHostName
remote> $ nohup ./command &
...closed session...
local> $ scp user@remoteHostName:/results/directory/result.txt .

이것이 정확히 당신이 하고 있는 일이 아닐지라도, 당신의 명령이 하고 있는 일처럼 보입니다. 이 지식은 문제를 디버깅하는 데 도움이 되며 작업을 다시 실행하지 않아도 됩니다(예: 결과를 다운로드하는 동안 연결이 끊어지는 경우).

이러한 모든 도구에 대한 자세한 내용은 wikipedia/google을 확인하세요. 불행히도 내 평판이 낮기 때문에 링크를 2개 이상 배치할 수 없습니다. :(

관련 정보