仕事でLinuxサーバーをCentOS7に変更し、新たにサーバーの設定をするという作業があり
先に新サーバーの設定値を検討する必要がありました。
cronの設定をどうするかということでまずはcronの設定ファイルはどれかや設定ファイルの設定の仕方などを1から調査したので備忘録として残します。
cronとは
cronは定期的に自動実行するためのツールと考えるとよい。
crondプロセスが常駐してジョブを実行する。
cronを利用することで「毎日○時」や「毎週○曜日の○時に」と時間を指定したらタスクを実行してくれる。
cronはLinuxで定期的にログを取ったりする時に利用される。
cronの設定ファイル
cronの設定ファイルは「/etc/crontab」です。
基本的にはこのファイルを直接編集することは推奨されておらず「/etc/cron.d/」配下にファイルを作成することが推奨されている。
- /etc/crontabの初期状態
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root # For details see man 4 crontabs # Example of job definition: # .---------------- minute (0 - 59) # | .------------- hour (0 - 23) # | | .---------- day of month (1 - 31) # | | | .------- month (1 - 12) OR jan,feb,mar,apr ... # | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat # | | | | | # * * * * * user-name command to be executed
何が違う?anacronとcron
cronについて調べているanacronという物がちょいちょい出てきました。
CentOS7でジョブを定期的に実行するときに利用されるのが「anacron」のようです。
CentOS5までは「cron」が採用されていたが、CentOS6以降からは「anacron」が採用されているとのこと。
anacronとcronの違いは実行タイミングが違うそうです。
cron→指定した日時に実行される。
anacron→指定した実行可能範囲の間で実行される。
anacronの場合はいつ実行されるかはだいたいの範囲でしかわからないというのが特徴。
cronはいつの何時何分に実行して!という感じに対して、anacronは出来そうな時間によろしく!という感じでしょうか。
さいご
最後まで読んでいただき、ありがとうございました。
もし、記載している内容が間違えていれば遠慮なくコメントしてください!
私自身の勉強になりますし、他の人がこの記事を見た時に間違えた情報を見ることになってしまうので💦