すべての *nix プラットフォームで実行したい jar ファイルを開発しました。再起動のたびに、パスワードを要求せずにルート権限で jar ファイルを実行したいです。解決策を Google で検索しましたが、スクリプトを書いてフォルダーに追加する必要があることがわかりました。しかし、jar 自体からスクリプトを作成できるはずです。このような操作を実行することは可能ですか。できない場合、他の解決策は何ですか。
答え1
すべての *nix プラットフォームについて語ることはできませんが、ほとんどの Linux および BSD にはcron
(非 posix)@reboot
特別なスケジュールがあります。
# crontab -e
<editor>
@reboot /path/to/java-wrapper-that-runs-the-jar
Javaのコマンドラインを1行のシェルスクリプトにするのが面倒な場合は、次の方法を試すこともできます。
@reboot /path/to/java -jar /path/to/jar
ただし、JAVA_HOME などの環境が不足している可能性があります。
cron アプローチは、/etc/rc.local
Linux 主義であると思われる を使用するよりも移植性が高い可能性があります (間違っている可能性もありますが)。