Linuxノウハウ Server

CentOS 8にてcron を利用して処理の時限設定を行う

概要

cron(クローン)はLinuxやMac等のUNIX系のOSに入っているプログラムです。
「この日時に、このプログラムを動かして!」と指示を出しておくと、その時間になったときに指定しておいたプログラムが実行されます。
Shell Script でコマンドの羅列や条件分岐などをスクリプトを作成して、cron に登録して自動起動させる場合などに使われることが多いのです。

 

  • 毎週目標の夜中の4時にディスク容量を確認してメールで送って!
  • 毎日1時にウィルスチェックツールの定義ファイルを更新して!
  • 1分おきにpingを特定ホストに投げて死活監視を行い、落ちていたらメールを送って!

 

 

cron の使用例

▼cronの設定ファイル

 command
# vi /etc/cronta

59 23 20 * * /home/vagrant/work.sh
└実行時間:左から「分」「時」「日」「月」「曜日」を指定。

曜日 0~6 = 日曜~土曜
* 日時曜日指定なしという意味

 

cron の登録例

▼毎月20日の 23:59 に、シェルスクリプト「aaaa.sh」を実行
59 23 20 * * /home/username/aaaa.sh


▼毎週金曜日の17:00に、シェルスクリプト「aaaa.sh」を実行

0 17 * * 5 /home/username/aaaa.sh


▼5分おきに、シェルスクリプト「aaaa.sh」を実行

「/5」と表記すると実行間隔として設定する事ができます。
*/5 * * * * /home/username/aaaa.sh


▼毎日の10時と20時に、シェルスクリプト「aaaa.sh」を実行

0 10 * * * /home/username/aaaa.sh
0 20 * * * /home/username/aaaa.sh


▼毎日のお昼12時に、シェルスクリプト「aaaa.sh」を実行

0 12 * * * /home/username/aaaa.sh

 

 

cronの実行結果をメールで送信

cron の実行結果をメールで送る場合は、crontab に「MAILTO="info@example.com"」の記述を行います。
下記の場合だと3時~4時の間に実行されるShellScriptの結果の標準出力がそれぞれ4通のメールとして「info@example.com」に送信されます。

結果をメールで送る設定例

MAILTO="info@example.com"
0 3 * * * root /usr/local/bin/df.sh
15 3 * * * root /usr/local/bin/freshclam.sh
30 3 * * * root /usr/local/bin/sa-learn-filter.sh
0 4 * * * root /usr/local/bin/maildir_clamscan.sh

 

 

おすすめ

1

目次1 Windows10で構築するサーバー構成の例2 Windows10 記憶域について3 Windows10 Hyper-vについて Windows10で構築するサーバー構成の例 知らない人も多い ...

2

目次1 記憶域について2 記憶域の作成方法 記憶域について この記事ではWindows 10 の記憶域によるストレージの作成方法について解説します。 そもそも記憶域について詳しく知りたい方は、下記の記 ...

3

目次1 概要2 テキストパーツ3 ボックスデザイン4 カスタムボタン5 会話ふきだし6 ランキング7 レイアウト8 その他パーツ9 記事一覧/カード10 ショートコード補助11 AFFINGER5につ ...

4

ディレクションを担当した世界遺産のガイドアプリより、ムービー用のBGMを1曲担当しました。 Misumi-nishikou It is BGM created for app video. sound ...

5

こちらはプライベートで作成したYoutube投稿用サイクリングムービーのBGMです。 EDM Sound-2 EDM sound for my Youtube. soundcloud.com

-Linuxノウハウ, Server