システムデバイスの「以降」がシャットダウンまたは再起動の順序に影響しますか?

システムデバイスの「以降」がシャットダウンまたは再起動の順序に影響しますか?

次のように、ネットワーキング後に起動するようにサービスを設定しました。

[Unit]
Description=Some service
After=network.target

サービス自体は、findを実行して実行する必要があることを行います。ただし、再起動コマンドを実行すると、systemdに次の内容が表示されます。

A stopjob is running for "SERVICE"...

そして、サービスが実際に終了する前にデフォルトのタイムアウトが通過します。

「After」句を削除すると、サービスが再び正常に実行され、再起動しようとするとタイムアウトが発生しなくなります。

理由が何なのか気になります。 「後」とは、指定された宛先の前または後にサービスを終了または停止する必要があることを意味しますか?私の言葉は、停留所の順序にもどのように影響を与えるという意味ですか?

ベストアンサー1

私の質問が早すぎた。 systemd のマニュアルページには、次のように明確に記載されています。

順次依存関係を持つ2つのデバイスがシャットダウンすると、開始順序は逆になります。つまり、あるデバイスが別のデバイスにAfter =を設定した場合、両方のデバイスがシャットダウンすると、前者は後者の前に停止します。 2つのデバイス間のシーケンス依存性を仮定すると、1つのデバイスがシャットダウンし、別のデバイスが起動すると、シャットダウンシーケンスは開始シーケンスよりも優先されます。順序依存関係がAfter =かBefore =かは重要ではありません。

おすすめ記事