過去問ドリル

LinuCレベル2 システムの起動とLinuxカーネル 問36

システムの起動とLinuxカーネル/システム起動のカスタマイズ

systemdを採用したシステムにおける、/run/systemd/system/ディレクトリの説明として適切なものはどれか。

当サイトのオリジナル問題(LinuCレベル2の出題範囲「システムの起動とLinuxカーネル」に対応。実際の試験問題ではありません)

正解:A

解説

/run/systemd/system/はtmpfs上の/run配下にあるため、置いたユニットファイルや設定は再起動すると消えます。systemctl enableなどに--runtimeを付けると、変更は/etcではなく/run配下に書かれ、次回の起動までの一時的な変更になります。ユニットの検索順序では、/etc/systemd/system/より優先度が低く、/usr/lib/systemd/system/より優先度が高い位置にあります。一時的に設定を試したいときに使う場所です。なお、ジェネレータが生成するユニットは/run/systemd/generator/等の別のディレクトリに置かれます。

選択肢ごとの解説

  • A正しい。/run配下はtmpfsのため再起動で消え、--runtimeを付けたsystemctlの変更もこの配下に書かれます。
  • B誤り。パッケージが提供するユニットファイルの置き場は/usr/lib/systemd/system/(Debian系では/lib/systemd/system/も)です。
  • C誤り。管理者が恒久的に変更したユニットを置くのは/etc/systemd/system/です。/run/systemd/system/はそれより優先度が低くなります。
  • D誤り。systemd本体の関連プログラムの多くは/usr/lib/systemd/に置かれます。/run/systemd/system/は実行ファイルの置き場ではありません。
LinuCレベル2の問題を演習モードで解く