犬鯖ではcronを使用して、決まった時間定期的に処理を走らせているのですが、 CentOS5.8からCentOS6.2にアップデートしたらどうしてもその定期実行が走らなくなった。 先ず最初に疑ったのが、ntpが動いていなかったから、正確な時間を取得出来ずに処理が走らないのかと思い、 ntpは入れた。 それでも上手く動かず、一度iptablesを停止させてみた所、ある処理に関しては動くようになった。 結局、あるポートのtcpだけ開けていたのだが、udpも開ける必要があると言う事がわかった。 udpも開けてもそれでも一部処理が走らない。 暫く頭を抱えていたが、よくよく考えると別の定期実行の処理も決まった時間に動いていない事に気がついた。 どうやら、corntabに原因がありそうだと推測し、調べてみた所、CentOS5とCentOS6では標準で入るcornが違うらしい。 ディフォルトで「cronie-anacron」と言う、とても賢いcornに変更されていて、 データのバックアップ等ならディスク負荷の平滑化と言う意味でそれの方が好ましいのだが、 軽い処理で「誤差が殆ど無いそのタイミングでその処理」を行うと言う事に関しては出来ない。 ようやく幾つも山を越えて、少しずつ完成度が上がってきた。 何気に自宅鯖もかれこれ10年やっている事になり、「少しずつ」じゃいけない気がするが、 ひとつお勉強になった気がするw ちなみに、暫くはCentOS6.Xにお世話になると思うので、もう一台の同じ機種のPCへもカーネルのソースをコピーしてビルドした。 こちらは更にインストールするモジュールを絞ってみた。