1

事前に構成された期間実行してから終了するデーモンがあります。その後、必要に応じてユーザーは再起動できます。systemd はこのタイプのサービスを処理できないようです。以下は、私が試したサービスファイルです。

[Unit]
# DaemonXXX quits
Description=DaemonXXX
After=network.target

[Service]
Type=forking
PIDFile=/var/run/daemonXXX.pid
ExecStart=/usr/local/sbin/daemonXXX
StandardOutput=journal

[Install]
WantedBy=multi-user.target

上記のユニットファイルでサービスを開始できます。デーモンが終了した後、コマンドで再起動することもできsystemctrl start DaemonXXXます。しかし、サービスがタイムアウト後に終了するとsystemd、daemonXXX が終了したためにシステムが劣化したと不平を言います。セクションにRemainAfterExitオプションを追加すると、[Service]

[Unit]
# as above
...

[Service]
# as above
...
RemainAfterExit=yes

...

systemdシステムに文句はありませんが、サービスが正しく実行されていると想定しているdegrardedため、コマンドでサービスを再起動できなくなり、再起動する必要はありません。それを解決する方法はありますか?systemctrl start daemonXXXsystemddaemonXXX

4

0 に答える 0