LinuCレベル1 Version 4.0 102試験の例題と解説

107.2 ジョブスケジューリングによるシステム管理業務の自動化

今回はLinuC 102試験の試験範囲から、「107.2 ジョブスケジューリングによるシステム管理業務の自動化」についての例題を解いてみます。

■トピックの概要
このトピックの内容は以下の通りです。

<107.2 ジョブスケジューリングによるシステム管理業務の自動化>
重要度 4

<説明>
cronまたはanacronを使用して定期的にジョブを実行したり、atを使用して指定時刻にジョブを実行できる。

<主要な知識範囲>
・cronおよびatでジョブを管理する
・ユーザがcronおよびatサービスにアクセスできるよう設定する
・anacronの設定

<重要なファイル、用語、ユーティリティ>
・/etc/cron.{d,daily,hourly,monthly,weekly}/
・/etc/at.deny
・/etc/at.allow
・/etc/crontab
・/etc/cron.allow
・/etc/cron.deny
・/var/spool/cron/
・crontab
・at
・atq
・atrm
・anacron
・/etc/anacrontab

■例題
atコマンドの書式として正しいものを選択してください

1. at now +10min
2. at 00:00
3. at 00:00 20180101
4. at yesterday

※この例題は実際のLinuC試験問題とは異なります。


解答と解説

答えは 「1. at now +10min」と「2. at 00:00」です。

atサービスは、指定した時間にコマンドやスクリプトを実行するためのサービスです。
atコマンドを利用して管理を行ないます。

ジョブを登録する場合の、atコマンドの書式は以下のとおりです。

at [-f ファイル] ジョブの実行日時

ジョブの実行日時を指定してatコマンドを実行すると、以下のように実行するコマンドの登録プロンプトが現れます。下記はloggerコマンドをジョブとして登録しています。

$ at 00:00
at> logger test
at> <EOT>
job 20 at Fri Dec  8 00:00:00 2017

ジョブの実行日時には、様々なフォーマットが利用できます。例えば以下のような形式です。

hh:mm              atコマンドを実行した日のhh時mm分にジョブを実行
hh:mm MMDDYYYY     YYYY年MM月DD日のhh時mm分にジョブを実行
now +1min          現在時刻から1分後にジョブを実行

また上記のようにプロンプトで、実行するコマンドを設定することもできますが、スクリプトを実行したい場合は不便です。スクリプトを実行したい場合は、-fオプションでスクリプトを指定することができます。

atサービスは、決まった時間に一度だけコマンドやスクリプトを実行したい場合に利用するサービスです。似たようなサービスに定期実行を行なうためのcrondサービスがありますが、違いを理解して使うようにしましょう。

■例題作成者
株式会社デージーネット ソリューション開発部    森 彰吾 氏

ページトップへ