LinuCレベル1 システム管理 問23
システム管理/ジョブスケジューリング/etc/crontab に記述するジョブの書式が、crontab -e で編集するユーザーごとのcrontabと異なる点として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル1の出題範囲「システム管理」に対応。実際の試験問題ではありません)
- A分と時のフィールドの順序が逆になり、「時 分 日 月 曜日」の順で記述する
- B曜日のフィールドが無く、「分 時 日 月」の4つの時刻フィールドで記述する
- Cコマンドの前に、ジョブを実行するホスト名を記述するフィールドが加わる
- D曜日とコマンドの間に、ジョブを実行するユーザー名のフィールドが加わる
正解:D
解説
/etc/crontab はシステム全体のcrontabで、「分 時 日 月 曜日 ユーザー名 コマンド」のように、時刻指定とコマンドの間に実行ユーザーを書くフィールドがあります。/etc/cron.d/ 配下に置くファイルも同じ書式です。一方、crontab -e で編集するユーザーごとのcrontab(/var/spool/cron/ 配下に保存される)は、所有者のユーザーとして実行されるためユーザー名のフィールドはありません。/etc/cron.daily/ などのディレクトリは、置いたスクリプトを日次などで実行する仕組みです。
選択肢ごとの解説
- A誤り。時刻フィールドの順序はどちらも「分 時 日 月 曜日」で共通です。
- B誤り。/etc/crontab にも曜日のフィールドがあり、5つの時刻フィールドを使う点は同じです。
- C誤り。cronはローカルのジョブを実行する仕組みで、実行ホストを指定するフィールドはありません。
- D正しい。/etc/crontab では、曜日とコマンドの間に実行ユーザー名を記述します。