systemdの自動起動サービスに[Install]部分を含める必要がありますか?

systemdの自動起動サービスに[Install]部分を含める必要がありますか?

私は読んでいます。https://www.freedesktop.org/software/systemd/man/systemd.service.html[Install]サービスの自動起動に部品が必要な場合は、その情報が見つかりません。

ベストアンサー1

起動時にいくつかのプログラムを実行する標準的な方法は、そのプログラムのファイルをsystemd作成し、.service対応するディレクトリそしてsystemctl enable <service>走った〜できるようにする起動シーケンスに使用されます。[Install]ここでは、systemd開始プロセスのどの時点でサービスを開始する必要があるかを示すため、必須です。あなたが処理しなければならない一部のリンクユニバーサル打ち上げ目標たとえばmulti-user.target、またはgraphical.target、特殊目的の宛先(たとえばnetwork-online.target)、またはカスタムローカル宛先に適用されます。

例:

[Install]
WantedBy=multi-user.target

ここでsystemdサービスは依存関係として注入されますmulti-user.target。ターゲットが開始されるたびにsystemdサービスが開始されます。multi-user

systemdは設定ディレクトリ内のファイル(またはシンボリックリンク)を読み取り、どのデバイスがどの順序で起動されるべきかを確認します。systemctl enable既に知っているサービスへのこれらのシンボリックリンクを作成し、サービスを開始する必要があるブートプロセスのポイント(特別なサブmulti-user.target.wants/ディレクトリなど)にこれらのシンボリックリンクを配置します。


systemdオペレーティングシステムが起動時に独自のサービスを開始する別の方法があります。必ずしもやるべきことではありませんが、[Install]その部分についての質問ですから...

(または)によって管理されsystemdていない「静的」デバイスと呼ばれるいくつかのデバイスがあります。ハードコーディングされたシンボリックリンクでsystemctl enableはなく起動時に起動するsystemctl disableと実行されます。/usr/lib/systemd/system//etc/systemd/system/[Install]

(あなたは見ることができますこのフォーラム投稿の議論静的単位の詳細。 )

おすすめ記事