重要なファイルを毎週バックアップしたり、システムを毎日監視するコマンドを実行したり、夜遅くまで起きて実行しなくてもスクリプトを自動的に実行したりする必要がある場合があります。
Ubuntuでのタスクの自動化は、cronと呼ばれるパッケージを介して実行できます。 Crontabは、cron tableの略語であり、シェルコマンドを定期的に実行するようにスケジュールするために使用される構成ファイルです。通常、crontabファイルは/etcまたは/etcの下のディレクトリに保存されます。 root権限を持つシステム管理者のみがcrontabファイルを編集できます。
この記事では、crontabファイルとUbuntuでcronジョブを設定する方法について説明します。 簡単に。
UbuntuでCrontabを使用してタスクを自動化およびスケジュールする
まず、次のコマンドを使用して、システムが最新であることを確認する必要があります。
sudo apt-get update
sudoパスワードを入力すると、次のような出力になります。
sudo apt-get upgrade
出力:
Yを押して、アップグレードが完了するまで待ちます。
次に、cronパッケージがインストールされているかどうかを確認します。
dpkg -l cron
出力:
cronパッケージがインストールされていない場合は、インストールしてみてください:
sudo apt-get install cron
cronサービスが実行されているかどうかを確認します:
systemctl status cron
出力:
実行されていない場合は、起動してみてください:
systemctl start cron
お気に入りのエディタを使用してcrontabファイルを開きます:
sudo vi /etc/crontab
出力:
crontabファイルで編集するには、注意して次の構文に従う必要があります。
分時間月の日月曜日のユーザーコマンド
たとえば、ディレクトリを作成してバックアップファイルをそのディレクトリに移動する必要があるとします。そして、このタスクを毎日2.20に実行する必要があります。次に、crontabファイルを編集して、次の行を追加します。
20 2 * ***ヘンダデルファイル>test crontabファイルのアスタリスク(*)は、すべての有効な値を意味することに注意してください。
次に、cronサービスを再起動します:
systemctl restart cron
そして出来上がり、ディレクトリが作成され、ログファイルが正常に移動されました。
出力:
cronジョブの出力を別のファイルにリダイレクトできます。これは、cronジョブがエラーを生成した場合に役立ちます。たとえば、logfileという別のファイルへの出力にリダイレクトを追加して、前のジョブを再度実行してみましょう(明らかに、ディレクトリがすでに存在するためにエラーが発生します)。仕事の時間を変更することを忘れないでください。
出力:
ログファイルに書き込まれたエラーを確認してください:
最後に、このチュートリアルがお役に立てば幸いです。cronまたはcrontabに関する詳細情報を入手する必要がある場合は、それらのマニュアルページを確認してください。ターミナルで次のコマンドを入力します。
man cron man crontab