Java 프로그램을 실행하고 싶지만 Putty를 닫아도 계속 실행되어야 합니다. 프로그램이 내 Raspberry pi에서 실행 중이고 완벽하게 시작되지만 콘솔을 닫자마자 프로그램이 중지됩니다.
현재 나는 sh 스크립트와 그 안에 다음 줄을 사용하여 시도했습니다.
nohup java -jar /home/pi/Programms/PantaBot/PantaBot.jar > /var/log/logPantaBot.txt 2>&1 &
답변1
여기서 실행 중인 OS/배포판을 지정하는 것을 잊었습니다. systemd 항목을 사용한다고 가정하고 /etc/systemd/system에 다음과 같은 새 파일(예: pantabot.service)을 추가합니다.
[Unit]
Description=pantabot
[Service]
ExecStart=/usr/bin/java \
-jar /home/pi/Programms/PantaBot/PantaBot.jar
SuccessExitStatus=143
일반적으로 로그 파일을 자동으로 관리하는 것이 좋습니다. [서비스] 섹션에 다음을 추가하면 기존(회전된) 로그 파일에 로그가 추가됩니다.
StandardOutput=syslog
StandardError=syslog
하지만 특정 파일로 보낼 수도 있습니다.
StandardOutput=append:var/log/logPantaBot.txt
StandardError=append:var/log/logPantaBot.txt
완료되면 실행 systemctl daemon-reload
한 다음 systemctl start pantabot / systemctl stop pantabot을 사용하여 제어합니다.
마지막으로 추가하면
[Install]
WantedBy=multi-user.target
systemctl enable pantabot
콘솔을 부팅하면 실행이 자동으로 시작됩니다.