cron

cron は、決まった時刻や周期でコマンドを自動実行するための定期実行の仕組みです。

cron のアイキャッチ図解
まずは、こう考えるとつかみやすいです。

cron は、毎朝決まった時間に鍵を開けたり掃除を始めたりする当番表付きタイマーのようなものです。

ひとことで言うと

cron は、サーバーに「毎日3時にこの処理」「5分ごとにこの確認」といった予定を登録して、自動で動かす仕組みです。

たとえ話でもう少し詳しく

cron は、ビル管理の自動スケジュールのようなものです。

  • 朝8時に照明をつける
  • 深夜1時に清掃ロボットを動かす
  • 毎週月曜に点検表を作る

人が毎回手で指示しなくても、時間が来たら決めた作業を実行します。 サーバーでも同じで、ログ整理、バックアップ、バッチ処理などを定期実行できます。

よく出る場面・使いどころ

  • 毎日深夜にバックアップを取りたいとき
  • 定期レポートや集計処理を回したいとき
  • 証明書更新や一時ファイル掃除を自動化したいとき
  • 監視補助として定時チェックを走らせたいとき

似た言葉との違い

  • Webhook
    • webhook は「イベントが起きたら動く」仕組み
    • cron は「決まった時刻や周期で動く」仕組み
  • SSH
    • SSH はサーバーへ人が入って手動で操作する方法
    • cron は人が入らなくても自動で処理を起動する方法
  • サーバー
    • サーバーは処理を実行する場所や役割
    • cron はそのサーバー上で予定どおり処理を走らせる仕組み

実務で気にするポイント

  • 実行時刻のタイムゾーンを確認する。サーバー時刻と思っていたものがズレることがある
  • 失敗しても気づけるよう、ログ出力や通知を入れる
  • 同じジョブが重複実行しない設計にする。処理時間が長いバッチでは特に重要
  • 秘密情報をコマンドへ直書きしない。環境変数や権限制御もセットで考える

注意: cron に登録しただけでは運用になりません。失敗通知、実行ログ、復旧手順まで決めておかないと、止まっていても長く気づけないことがあります。