107.2標準
backup.timerを現在の起動中systemdで開始し、次回boot以降も自動的に有効化する。
適切なコマンドはどれか。
× 不正解
systemctl enable --now UNITはboot時の有効化と現在のstartをまとめて行う。timer unit自体を対象に指定する。
詳細解説
誤り
systemctl start backup.serviceserviceを今回起動するだけで、timerの有効化と開始を行わない。
誤り。backup.serviceを直接startすると今回の処理だけが起動し、backup.timerの現在開始とboot時有効化は行われない。
誤り
systemctl enable backup.timer次回boot向けの有効化は行うが、--nowなしでは現在のtimerを開始しない。
誤り。enableは永続的な起動関係を構成するが、--nowを付けなければ現在のbackup.timerをstartしない。
正しい
systemctl enable --now backup.timertimerを永続的に有効化し、同時に現在も開始する。
正しい。enableがboot時の自動起動を構成し、--nowが同じbackup.timerを直ちにstartする。
誤り
systemctl daemon-reload backup.timerdaemon-reloadはunit定義を再読込する操作で、引数unitを有効化・開始しない。
誤り。daemon-reloadは変更したunit fileの再読込用で、unit名をこの形で有効化・開始するcommandではない。
実際に確かめる
一時的な検証環境で実行できる例です。
printf '%s\n' 'enable: persistent boot activation' 'now: start immediately'期待される結果
enable: persistent boot activation
now: start immediately理解のポイント
- enableはboot向け
- --nowは現在もstart
- 対象は.timer
確認時の注意
- 確認環境: 状態変更しない意味確認
- 実際のenable --nowはsystem状態を変更するため検証では実行しない。
基礎のおさらい
enableとstart
enableは将来の起動関係、startは現在の状態を変更するため、どちらか一方だけでは要件が片方残る。
timerを開始
通常はserviceを常駐させるのではなく.timerをactiveにし、予定時刻にserviceを起動させる。
問題IDKP-107-703
確認環境状態変更しない意味確認
最終技術確認2026-08-13
誤り・権利侵害を報告