可能であれば、システムのインストールとアップグレードを編集せずに起動時にSystemd
restart()または再ロード(設定のみを再ロード)する方法があるかどうかを知りたいです。A.service
After
B.service
B.service
A.service
B.service
インストールされていない、無効になっている、または停止した場合でも起動する必要があります。
A.service
:
[Unit]
After = B.service network-online.target
Wants = B.service
[Service]
Type=oneshot
ExecStart = /script.sh start
ExecStop = /script.sh stop
RemainAfterExit=yes
[Install]
WantedBy = network-online.target
B.service
:
[Unit]
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/cmd start
ExecStop=/cmd stop
ExecReload=/cmd reload
PIDFile=/var/run/cmd.pid
[Install]
WantedBy=multi-user.target
ベストアンサー1
PartOf
このセクションを使用できます[Unit]
。
例:PartOf=B.service
マニュアルページでは、
部分=
依存関係の設定はRequires =に似ていますが、デバイスを停止して再起動することに制限されています。 systemdがここにリストされているデバイスを停止または再起動すると、ジョブはそのデバイスに伝播されます。これは一方向の依存関係です。このデバイスを変更しても、リストされているデバイスには影響しません。