2013-06-29 4 views
0

안녕하세요 저는 Ubuntu Web Server에서 Java 프로그램을 만들고 있습니다 만, 항상 무한 루프 또는 적어도 중단 할 때까지 실행 중이라고 가정합니다. 우분투 콘솔에서 실행하면 콘솔을 계속 사용하지 못하게됩니다. 이 문제를 해결하기 위해 "화면"명령을 사용하고 화면을 분리했습니다. 화면 명령을 사용하지 않고이 작업을 수행하는 더 좋은 방법이 있는지 궁금합니다.Ubuntu에서 Java 무한 루프 실행

+0

당신은 우분투 서버를 의미합니까? 우분투 서버는 웹 서버와 다른 많은 서비스 유형을 허용합니다. – hexafraction

답변

0

명령 줄에서 수동으로 자바 프로그램을 시작하기에 만족하는 경우

을 정지하지 면역 프로그램을 실행하지만, 단지 화면 실행하지 싶어, 당신은 시작 "nohup을"명령을 사용할 수 있습니다 Java 프로그램은 콘솔 창을 닫거나 로그 아웃 한 경우에도 Java 프로그램이 계속 실행되는 방식으로 실행됩니다.

$ nohup java ... 
nohup: ignoring input and appending output to `nohup.out' 
$ 

당신이 콘솔 창을 닫거나 로그 아웃하면 자바 프로그램이 중지 괜찮다면 당신은 "nohup을"을 사용하여 건너 뛸 수 있습니다, 배경

에서 프로그램을 실행하고 만 "&를 추가 "명령이 끝날 때까지 백그라운드에서 응용 프로그램을 실행하도록 쉘에 지시합니다. 명령에서 "> program.log 2> & 1"을 추가하여 다른 용도로 사용하는 동안 프로그램의 출력이 콘솔 창에 표시되지 않도록 할 수 있습니다.

$ java ... > program.log 2>&1 & 
[2] 3128 
$ jobs 
[2]+ Running   java ... > program.log 2>&1 & 
$ 

실행 데몬 같은 프로그램

당신이 자동으로 시스템을 재부팅 할 때마다 시작하는 Java 프로그램을 원하는 경우에, 당신이 SYSV init-script을 만들어 조사해야한다, 또는 당신이 우분투에서 실행중인 , an Upstart Job definiton.