サービスとしてインストールしようとしているJavaファイルがありますが、エラーが発生します。以下は、ファイルの内容とエラーです。Debian8を実行しています。
[Unit]
Description=App1Manager
After=syslog.target
[Service]
ExecStart=/usr/bin/jsvc -user root -cp /usr/share/Java/commons-daemon.jar:/usr/local/myapp/bin/Manager.jar -pidfile /var/run/app1manager.pid
Type=forking
[Install]
WantedBy=multi-user.target
以下のいずれかを使用すると、次のエラーが発生します。
SYSTEMD_LOG_LEVEL=debug /lib/systemd/system/myapp1
SYSTEMD_LOG_LEVEL=debug /etc/init.d/myapp1
/etc/init.d/myapp1: line 1: [Unit]: command not found
/etc/init.d/myapp1: line 6: [Service]: command not found
/etc/init.d/myapp1: line 7: -user: command not found
/etc/init.d/myapp1: line 10: [Install]: command not found
Aug 12 12:04:39 debian systemd[3903]: Failed at step EXEC spawning /etc/init.d/myapp1: Exec format error
-- Subject: Process /etc/init.d/myapp1 could not be executed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- The process /etc/init.d/myapp1 could not be executed and failed.
--
-- The error number returned while executing this process is 8.
Aug 12 12:04:39 debian systemd[1]: myapp1.service: control process exited, code=exited status=203
Aug 12 12:04:39 debian systemd[1]: Failed to start (null).
-- Subject: Unit myapp1.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit myapp1.service has failed.
--
-- The result is failed.
Aug 12 12:04:39 debian systemd[1]: Unit myapp1.service entered failed state.
systemd/system
に.service
ファイル拡張子を付けてインストールします。実行可能ビットを設定する必要はありません。 systemd形式のサービスファイルを/etc/init.d/
にインストールしないでください。これは、レガシーSysVinitスタイルのサービススクリプト用です。
サービスを開始するには、systemctl start myapp1
を使用します。サービスがsystemdとして実装されているのかSysVとして実装されているのかわからない場合は、service myapp1 start
を使用してください。
ブート時に有効にするには[適切なInstall
セクションを指定] systemctl enable myapp1
を使用します。