110.2標準
未使用のlegacy-daemon.serviceについて、boot時自動起動だけでなく、依存関係や手動操作によるstartも禁止する。
systemdの強い無効化を選ぶ。
適切なコマンドはどれか。
× 不正解
systemctl maskはunit nameを/dev/nullへlinkしてstartを拒否する。disableより強く、解除にはunmaskが必要である。
詳細解説
正しい
systemctl mask legacy-daemon.serviceunitを/dev/nullへlinkしstartできない状態にする。
正しい。maskはunit fileを/dev/nullへ向け、手動や依存によるstartも失敗させる。
誤り
systemctl disable legacy-daemon.service自動起動linkは除くが手動・依存startを必ず禁止しない。
誤り。disableはinstall linkを除くだけで、明示的startや依存activationを禁止しない。
誤り
systemctl daemon-reloadunit fileを再読込するだけで対象unitを禁止しない。
誤り。daemon-reloadはunit file変更を読み直すが、特定unitを起動禁止にしない。
誤り
systemctl reset-failed legacy-daemon.servicefailed stateをresetし、起動禁止にしない。
誤り。reset-failedはfailure記録を消し、むしろ再start可能な状態へ戻す用途がある。
実際に確かめる
一時的な検証環境で実行できる例です。
printf '%s
' 'disable=remove automatic enablement' 'mask=prevent activation by linking unit to /dev/null'期待される結果
disable=remove automatic enablement
mask=prevent activation by linking unit to /dev/null理解のポイント
- maskはstart禁止
- disableより強い
- unmaskで解除
確認時の注意
- 確認環境: systemctl操作対応表
- 実unitはmaskしない。
基礎のおさらい
強度の選択
単にboot起動を止めるならdisable、絶対にactivationさせないpolicyならmaskを選ぶ。
maskの注意
dependencyが必要とするunitをmaskすると他serviceも失敗するため影響範囲を確認する。
問題IDKP-110-865
確認環境systemctl操作対応表
最終技術確認2026-08-13
誤り・権利侵害を報告