GNU/Linux >> Linux の 問題 >  >> Linux

RHEL 7 – RHCSA に関する注意事項 :at および cron を使用してタスクをスケジュールする

RHEL 7 – RHCSA ノート (チート シート)

– Linux はタスクを自動的に実行でき、自動タスク ユーティリティが付属しています:cron、anacron、at、batch .
– cron ジョブは毎分実行できます。
– システムがダウンしている場合、スケジュールされた cron ジョブはスキップされます。
anacron 1 日に 1 回だけジョブを実行できます。
– スケジュールされたジョブは記憶され、次回システムが起動したときに実行されます。
crond デーモンは、複数のファイルとディレクトリを検索して、スケジュールされたジョブを探します:

1. /var/spool/cron/ 
2. /etc/anacrontab 
3. /etc/cron.d

cron ジョブの構成

cron ジョブは /etc/crontab で定義されます。
crontab エントリは次の形式です:

Minutes Hours Date Month Day-of-Week command
where:
Minutes = [0 to 59]
Hours   = [0 to 23]
Date    = [1 to 31]
Month   = [1 to 12]
Day-of-Week = [0 to 6] 0=Sunday - 6=Saturday
command = a script file or a shell command.
Other special characters can be used:
- An asterisk (*) can be used to specify all valid values.
- A hyphen (-) between integers specifies a range of integers.
- A list of values separated by commas (,) specifies a list.
- A forward slash (/) can be used to specify step values.

その他の cron ディレクトリとファイル

/etc/cron.d
– /etc/crontab と同じ構文のファイルが含まれています – root 権限でのみアクセスできます
– /etc 内の他の cron ディレクトリ:–

cron.hourly
cron.daily
cron.weekly
cron.monthly

– これらのディレクトリ内のスクリプトは、ディレクトリの名前に応じて、毎時、毎日、毎週、または毎月実行されます。
/etc/cron.allow および /etc/cron.deny ファイルは、cron へのユーザー アクセスを制限します。どちらのファイルも存在しない場合、root のみが cron を使用できます。

Crontab ユーティリティ

– root 以外のユーザーも crontab ユーティリティを使用して cron を構成できます。
– ユーザー定義の crontab は /var/spool/cron/[username] に保存されます .
– crontab エントリを作成または編集するには:

# crontab -e

– ユーザー定義の crontab のエントリを一覧表示するには:

# crontab -l

anacron ジョブの設定

– anacron ジョブは /etc/anacrontab で定義されています .
– ジョブは以下によって定義されます:

Period in days : frequency of execution in days
Delay in minutes - Minutes to wait before executing the job
job-identifier - A unique name used in logfiles
command : a shell script or command to execute

anacron ファイルの例 :

SHELL=/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
# the maximal random delay added to the base delay of the jobs
RANDOM_DELAY=45
# the jobs will be started during the following hours only
START_HOURS_RANGE=3-22

#period in days   delay in minutes   job-identifier   command
1	5	cron.daily		nice run-parts /etc/cron.daily
7	25	cron.weekly		nice run-parts /etc/cron.weekly
@monthly 45	cron.monthly		nice run-parts /etc/cron.monthly

at とバッチ

– at ユーティリティと batch ユーティリティは、1 回限りのタスクのスケジューリングに使用されます。
– at コマンドは、特定の時間にタスクを実行します。
– batch コマンドは、システム負荷平均が 0.8 未満のときにタスクを実行します。
– at またはバッチ ジョブを実行するには、atd サービスが実行されている必要があります
– at コマンド構文:

# at time

– 時間引数は複数の形式を受け入れます:

HH:MM
MMDDYY,MM/DD/YY or MM.DD.YY
month-name day year
midnight: At 12:00 AM
teatime: At 4:00 PM
now + time   -- here time can be minutes, hours, days or weeks

– バッチ コマンド構文:

# batch (at> promp is displayed)

/etc/at.allow および /etc/at.deny ファイルは、ユーザー アクセスを at に制限します。どちらのファイルも存在しない場合、root のみが cron を使用できます。


Linux
  1. cronジョブ/自動タスク

  2. Linuxでの使い捨てcronジョブにatを使用する

  3. RHEL 7 – RHCSA に関する注意事項 :ローカル ユーザー アカウントの作成、削除、および変更

  1. cronを使用してタスクをスケジュールするためのLinuxのヒント

  2. Crontabを使用してcronジョブをスケジュールする方法

  3. Linux で at を使用してタスクをスケジュールする方法

  1. RHEL 7 – RHCSA 注:ハード リンクとソフト リンクを作成します。

  2. RHEL 7 – RHCSA ノート – SELinux の強制モードと許可モードの設定

  3. RHEL 7 – RHCSA 注:ネットワーク サービスの開始、停止、およびステータスの確認。