Cron バックアップタスク

Cron バックアップタスク

私は長い間この話題から離れていました。

以前、私は crontab を使用して、一定時間ごとにタスクを実行していました。30 分ごとにシェル スクリプトを実行する必要があります。

#!/bin/bash
SNAPSHOT=`date +%Y%m%d-%H%M%S`
docker exec es curl -XPUT "localhost:9200/_snapshot/my_backup/$SNAPSHOT?wait_for_completion=true"

私は2つのアプローチに直面しています:

  1. systemctlサービスを作成し、
  2. crontab を作成します。

それを達成するための最善の方法は何でしょうか?

答え1

コメントでは、次のような cron ジョブを追加したと書かれています:

0,30 * * * * root docker exec es sh /usr/local/bin/snapshot.sh

あなたのスクリプトからすると、次のようになります:

0,30 * * * * root /usr/local/bin/snapshot.sh

これで、スクリプトはroot権限を持って実行されます。/var/log/cron次のようになります:Jan 20 05:30:01 platform-prod CROND[16409]: (root) CMD (root /usr/local/bin/snapshot.sh)

関連情報