システムターゲットの実行順序の追跡

システムターゲットの実行順序の追跡

システム起動時にSystemdが何をしているのか理解しようとしています。私の考えでは、初期化する最初のターゲットは通常/usr/lib/systemd/user/default.targetUbuntuから次のターゲットを取得します。

default.target:

[Unit]
Description=Default
Documentation=man:systemd.special(7)
Requires=basic.target
After=basic.target
AllowIsolate=yes

default.target必須で、後で実行してくださいbasic.target

[Unit]
Description=Basic System
Documentation=man:systemd.special(7)
Wants=sockets.target timers.target paths.target
After=sockets.target timers.target paths.target

sockets.target:

[Unit]
Description=Sockets
Documentation=man:systemd.special(7)

timers.target:

[Unit]
Description=Timers
Documentation=man:systemd.special(7)

DefaultDependencies=no
Conflicts=shutdown.target

paths.target:

[Unit]
Description=Paths
Documentation=man:systemd.special(7)

そのため、Systemdは依存関係の依存関係、依存関係の依存関係などを決定しましたが、行き止まりの路地に達しました。どうすればいいですか?すべてがうまくいくと仮定すると、つまりすべての依存関係がdefaul.target識別され初期化されたと仮定すると、まだ上記の目標に記載されていない、multi-user.targetおよびその他の目標が必要です。sysinit.target

Systemd は、初期化すべきターゲットと無視すべきターゲットをどのように決定しますか?

関連情報