Linuxの多くのタスクは、定期的に実行することが求められることがあります。例えば、ログファイルの監視、システムのアップデート、バックアップの取得など、これらのタスクは一定の間隔で自動的に実行することが望ましい。この記事では、Linuxでコマンドを定期的に実行する方法と、その応用例について解説します。
目次
Linuxでの定期実行の基本: cron
Linuxでは「cron」というシステムを利用して、定期的にコマンドやスクリプトを実行することができます。`crontab`というコマンドを使用して、タスクのスケジュールを設定します。
# crontabの編集
crontab -e
このコマンドを実行すると、デフォルトのエディタが開き、タスクのスケジュールを設定することができます。
crontabの基本的な書式
crontabのエントリは以下の形式で記述します。
* * * * * /path/to/command
この5つのフィールドは、それぞれ分、時、日、月、曜日を表しています。
crontabの例
例えば、毎日0時に`/home/user/backup.sh`というスクリプトを実行する場合は以下のようになります。
0 0 * * * /home/user/backup.sh # 毎日0時にbackup.shを実行
応用例1: ログファイルの監視
毎時に特定のログファイルに異常がないかチェックするスクリプトを実行する例です。
0 * * * * /path/to/log-monitor.sh # 毎時にlog-monitor.shを実行
応用例2: システムのアップデート
毎週日曜の2時にシステムを自動更新する例です。
0 2 * * 7 sudo apt update && sudo apt upgrade -y # 毎週日曜2時にシステムをアップデート
応用例3: ディスクの使用率を確認
毎日の午後3時にディスクの使用率をチェックし、ある閾値を超えていれば警告メールを送信する例です。
0 15 * * * /path/to/disk-check.sh # 毎日15時にdisk-check.shを実行
応用例4: バックアップの取得
毎日22時にデータベースのバックアップを取得する例です。
0 22 * * * /path/to/db-backup.sh # 毎日22時にdb-backup.shを実行
まとめ
Linuxの`cron`を利用することで、様々なタスクを定期的に自動実行することができます。タスクのスケジュール設定は`crontab`を利用して簡単に行うことができるので、日常の運用や監視などの作業を効率化するために活用しましょう。
コメント