LinuCレベル1 102試験の例題と解説
1.08.2ジョブスケジューリング
今回は、LinuC 102試験の試験範囲から「1.08.2 ジョブスケジューリング」についての例題を解いてみます。
例題
ユーザが指定したジョブを定期的に実行するためのcronの設定を編集するには、どのコマンドを実行すべきか選択してください。
- crontab -w
- crontab -r
- crontab -e
- vicron
※この例題は実際の試験問題とは異なります。
解答と解説
答えは「3. crontab -e」です。
cronサービスは、起動したcrondデーモンが1分ごとにcronの設定を調べて、実行すべきスケジュールが存在すれば、そのジョブを実行します。
cronにはユーザごとの設定と、システム全体の設定があります。
システム全体のcron設定は、/etc/crontabファイルを編集します。
ユーザのcron設定を編集するには、該当のユーザでcrontabコマンドを使用します。
書式は以下の通りです。
crontab [オプション]
主なオプションは以下です。
-e … 実行ユーザのcron設定ファイルをエディタで開いて編集します
-l … 実行ユーザの設定の内容を表示します
-r … 実行ユーザの設定を削除します
-u [ユーザ名] … 設定するユーザを指定します
「1. crontab -w」はcrontabコマンドに-wオプションはないので誤りです。
「2. crontab -r」はユーザのcron設定を削除するためのオプションです。
該当ユーザのcron設定すべてが消えてしまうので、使用する際は注意してください。
-eオプションでファイルの編集ができるので、正解は「3. crontab -e」です。
-uオプションはユーザを指定した上で、他のオプションと組み合わせて使います。
例えば「crontab -u linuc -l」とすると、linucユーザのcron設定が表示されます。
-uオプションで他ユーザを指定できるのは、rootユーザのみです。
「4. vicron」は存在しないコマンドのため、誤りです。
定期的にジョブを実行するcronやanacron、決まった時間に一度だけ実行するatを利用することで、ジョブスケジューリングが容易になります。
システム運用でうまく活用するために、それぞれの違いや使い方を、よく理解しておきましょう。