Systemd: 障害が発生しても RequiredBy 依存関係がトリガーされる

Systemd: 障害が発生しても RequiredBy 依存関係がトリガーされる

test-dl.service test-db.service最初のサービスが成功した場合にのみ順番に実行する必要がある2 つの systemd サービスがあります。

私は使用しています

  • After両方のサービス間の順序を設定するオプション。
  • RequiredBydl サービスが成功したときに db サービスをトリガーするオプション。

RequiredBy/Requires ドキュメントには、「このユニットがアクティブ化されると、リストされているユニットもアクティブ化されます。他のユニットの 1 つがアクティブ化に失敗し、失敗したユニットに順序付け依存関係 After= が設定されている場合、このユニットは起動されません。」と記載されています。

ただし、最初のサービスが失敗した場合でも、2 番目のサービスが開始されることがわかります。

test-dl.serviceが失敗し、 が予期せずトリガーされるコード スニペットtest-db.service

テスト-dl.service

[Unit]
Description=The downloader.
After=network-online.target

[Service]
Type=oneshot
ExecStart=/bin/bash -c 'sleep 10 ; exit 5'

テストdbサービス

[Unit]
Description=The parser.
After=test-dl.service

[Service]
Type=oneshot
ExecStart=/bin/bash -c 'exit 0'

[Install]
RequiredBy=test-dl.service

助けてくれてありがとう

関連情報