저는 기본적으로 Java 프로그램의 Jar 파일인 긴 프로그램을 서버에서 실행하고 있습니다. SSH 터미널을 닫아도 이 프로그램을 계속 실행하고 싶은데, 이 프로그램을 서버에서 계속 실행하려면 어떻게 해야 합니까?
답변1
두 가지 다른 방법:
- 사용
nohup
- nohup으로 프로그램을 시작하여 프로그램을 계속 실행 하면 모든 출력이 현재 디렉터리의 파일nohup /path/to/program &
로 리디렉션됩니다.nohup.out
- 서버에 이들 중 하나가 설치되어 있으면 또는 를 사용하십시오
screen
.tmux
이는 다음에 로그인할 때 다시 연결할 수 있도록 하나 이상의 셸을 계속 실행하는 방법입니다. 이는 nohup보다 더 강력한 유틸리티입니다.man screen
또는man tmux
자세히 알아보세요.
답변2
nohup을 사용하지 않고 시작된 프로세스를 계속 실행하는 방법은 다음과 같습니다.
대규모 아카이브의 압축을 풀기 시작했고 이제 집으로 돌아가고 싶다고 가정해 보겠습니다.
$ tar -xzf bigfile.tar.gz
프로세스를 백그라운드로 보내려면 ctrl-z를 누르세요. "jobs"를 입력하고 Enter를 누르면 프로세스의 작업 번호(아마도 1)를 볼 수 있습니다.
그런 다음 다음을 수행하십시오.
$ disown %1
답변3
screen 또는 tmux가 작동합니다.
예를 들어 참조하십시오.http://www.jeffstory.org/wordpress/?p=132사용 방법에 대한 빠른 튜토리얼입니다.