시작 시 루트로 jar 파일을 실행합니다. 비밀번호는 필요하지 않습니다.

시작 시 루트로 jar 파일을 실행합니다. 비밀번호는 필요하지 않습니다.

모든 *nix 플랫폼에서 실행하고 싶은 jar 파일을 개발했습니다. 재부팅할 때마다 비밀번호를 묻지 않고 루트 권한으로 jar 파일을 실행하고 싶습니다. 해결책을 검색해 봤지만 스크립트를 작성하고 폴더에 추가해야 한다는 결과가 나왔습니다. 하지만 jar 자체에서 스크립트를 작성할 수 있어야 합니다. 이런 일을 할 수 있습니까? 그렇지 않다면 다른 해결책은 무엇입니까?

답변1

모든 *nix 플랫폼에 대해 말할 수는 없지만 대부분의 Linux 및 BSD에는 (posix가 아닌) 특별 일정이 cron있습니다 .@reboot

# crontab -e
<editor>
@reboot /path/to/java-wrapper-that-runs-the-jar

Java 명령줄을 한 줄의 쉘 스크립트에 넣는 것이 불편하다면 시도해 볼 수 있습니다.

@reboot /path/to/java -jar /path/to/jar

그러나 JAVA_HOME과 같은 환경이 누락되었을 수 있습니다.

cron 방법은 아마도 그것을 사용하는 것보다 이식성이 더 좋을 것입니다. /etc/rc.local제 생각에는 이것이 Linux주의적이라고 생각합니다(물론 제가 틀렸을 수도 있습니다).

관련 정보