#[Unit]をコメントアウトしないと、起動時にシステムサービスユニットが起動しません。

#[Unit]をコメントアウトしないと、起動時にシステムサービスユニットが起動しません。

最新のArch Linux ARMv7(RaspPi 3)を実行します。 2つのシステムサービスユニットを作成しました。fooまず始めて、後で始めたいですbarfoo起動時に起動しますがbar起動しません。ただし、barシェルプロンプトから手動で起動します。以下はユニットファイルのコピーですbar

[Unit]
Requires=foo.service
After=foo.service

[Service]
Type=simple
ExecStart=/usr/bin/setsid /usr/bin/bar >/dev/null 2>&1 < /dev/null
TimeoutSec=0
RemainAfterExit=Yes

[Install]
WantedBy=getty.target

ただし、次のように前にポンド記号を入れると次のようになります[Unit]

#[Unit]

その後、bar起動時に正しい順序で始まります(それ以降foo)。

この振る舞いとコメントは理に[Unit]かなっていないようで、私が見つけた文書には合いません。もしそうなら、起動時にデバイスが起動する理由は何ですか? !

ベストアンサー1

コメントアウトすると、ディレクティブは無視さ[Unit]れます。これらのディレクティブを削除してコメントを削除すると、同じ動作が発生します。RequiresAfter#

注釈なしで起動時に開始されないのは、#他のサービスの要件に問題があるためです。

おすすめ記事