【初心者向け】Ubuntuでcrontabを使う方法|定期実行の基本と便利な使い方

その他

Ubuntuを使っていると、
「バックアップスクリプトを毎日実行したい」
「ログの整理を週一でやりたい」
など、自動で処理したい場面はたくさんありますよね。

そんなときに使えるのが、crontab(クローンタブ)です。

これは、Linuxで昔から使われている「定期実行の仕組み」で、特別な知識がなくても簡単に設定できます。

この記事では、Ubuntuでのcrontabの基本的な使い方から、実際の活用例、注意点までをわかりやすく解説します!

スポンサーリンク

crontabとは?Ubuntuにおける役割

crontabとは、指定した時間にコマンドやスクリプトを自動実行する仕組みです。

Ubuntuを含むほとんどのLinuxディストリビューションに標準搭載されています。

バックグラウンドで動作するcron(クロン)デーモンが、crontabファイルの内容を定期的に読み取り、処理を実行してくれます。

crontabの基本構文と時間指定の仕組み

crontabでは、次のような形式で実行時間を設定します:

分 時 日 月 曜日 コマンド

例:

30 2 * * * /home/user/backup.sh

これは「毎日2:30に/home/user/backup.shを実行する」という意味です。

各フィールドの意味

フィールド内容
0〜5930
0〜232
1〜31*
1〜12*
曜日0〜7(0と7は日曜)*

*」は「すべて」を意味します。

crontabを編集・登録する手順

編集(作成):

crontab -e

初回はエディタの選択画面が出ることがあります。
nanoを選べばOK。

現在のcrontabを確認:

crontab -l

特定ユーザーのcrontabを編集:

sudo crontab -e -u ユーザー名

実用例:バックアップやスクリプトの自動実行

毎朝5時にバックアップスクリプトを実行:

0 5 * * * /home/user/backup.sh

毎週月曜の夜11時にログを削除:

0 23 * * 1 rm /var/log/temp.log

毎分Pythonスクリプトを実行:

* * * * * /usr/bin/python3 /home/user/task.py

crontabの確認・削除・ログの見方

登録済みジョブの確認:

crontab -l

crontabの削除:

crontab -r

実行ログの確認方法(Ubuntuの場合):

grep CRON /var/log/syslog

もしくはjournalctlを使って確認することもできます:

journalctl -u cron

注意点とよくあるエラー

フルパスでコマンドを記述する

crontabでは環境変数(特にPATH)が限られているため、実行ファイルの絶対パスを書くのが安全です。

権限エラー

スクリプトに実行権限があるか確認:

chmod +x /home/user/backup.sh

● 出力をログに記録したい場合:

0 5 * * * /home/user/backup.sh >> /home/user/backup.log 2>&1

まとめ:Ubuntuの自動化はcrontabから始めよう!

crontabは、Ubuntu上での自動処理の基本ツールです。

スクリプトの定期実行やログの整理、バックアップなどに大活躍します。

覚えておきたいポイント:

  • 編集:crontab -e
  • 確認:crontab -l
  • 書き方:分 時 日 月 曜 コマンド
  • 実行権限とフルパスを忘れずに!

少し慣れてくると、日常的なタスクを完全自動化できるようになります。

まずは簡単なジョブから、ぜひcrontabを活用してみてください!

コメント

タイトルとURLをコピーしました