원격 서버에 대한 연결이 끊어지면 이 명령이 실행됩니까?

원격 서버에 대한 연결이 끊어지면 이 명령이 실행됩니까?

원격 서버에서 다음과 같은 명령을 실행하면:

$ sleep 3h ; date ; nohup long-running-process ; date

...2시간 후에 연결이 끊어지면 전체 명령이 실행됩니까?

그렇지 않은 경우 연결이 끊어진 경우에도 모든 것이 실행되도록 명령을 수정하려면 어떻게 해야 합니까?

답변1

아니요, 처리하기 전에 sleep연결이 끊어지고 명령 중에 터미널에 연결된 모든 하위 프로세스에 SIGHUP 신호가 전송되기 때문입니다.nohup

특정 시간에 명령을 실행해야 하는 경우 다음을 수행할 수 있습니다.

  • 명령을 스크립트에 넣고 스크립트를 실행하지 마십시오.
  • 사용하다at일하다일회성 필요를 위해
  • 사용하다cron일하다정규근무의 경우
  • 사용tmux또는screen터미널을 서버에 연결된 상태로 둡니다.

오래된 속담처럼 고양이의 가죽을 벗기는 방법은 여러 가지가 있습니다.

관련 정보