AWS で Amazon Linux をいじっている時のメモ。
AWS というより CentOS 6 からの話。
運用環境は CentOS 5 なので気づかなかった。
AWS の Amazon Linux の EC2 インスタンスで毎日1回バックアップを行わせようと
/etc/cron.daily にシェルスクリプトを置いたのだが、変な時間に実行される。
そもそも、インスタンスの計時が JST ではなく(リージョン見ててくれてもいいとは思ったけれど)、
UTC で行われているので、単純に9時間の時差が出る。ここまではすぐわかったのだが。
CentOS 6 から、/etc/cron.daily, /etc/cron.weekly, /etc/cron.monthly といった
ディレクトリにシェルスクリプト等を置いて定期実行させる場合の処理が cron から
anacron に変わった。
このため、anacron の設定で定期実行の実行時刻が左右される。しかも、anacron は
一定範囲のランダムな時間に実行するので、決まった時刻に実行されるわけでもない。
仮想環境向けに、同時刻に各仮想環境が処理を始めることがないようにとのことらしい。
ということで、定時実行処理は crontab に書くということで。
(参考)
anacronふたたび。(「RHEL6で悩ましい諸々」シリーズ) - めもめも
ALL about Linux: CentOS6 の cron.daily 実行時刻を CentOS5 以前と同様に設定する
OSSはアルミニウムの翼で飛ぶ: RHEL6 (7)cronとanacron
anacron を知る - 独立系フリーシステムエンジニア滝沢の技術ブログ