プロセスが長すぎるCrontabの問題

プロセスが長すぎるCrontabの問題

いくつかのファイルをバックアップするためにrsyncを実行するスクリプトがあります。 rsyncが完了すると、スクリプトは結果を含む電子メールを私に送信します。

rsync 時間が 30 分から 1 時間未満の場合は問題なくメールが送信されますが、rsync が時間がかかるとメールは送信されません。

Rsyncは3〜4時間以上かかりません(最悪の場合:新しいバックアップのクリーンアップ)。このスクリプトは毎日午前2時に実行するようにプログラムされています。したがって、プロセスが重複する問題になることはできません。

特定の時間が経過すると、スクリプトが終了するのと同じように、コマンドの完了に時間がかかりすぎてコマンドを実行し続けない場合があります。

重複した質問で申し訳ありません。オンラインで関連情報が見つかりませんでした。

とても感謝しています!

編集:Linux Mint 20を実行しているシステム

編集2:この問題はUbuntu Serverでも発生します。スクリプトファイルはsudoersにあるため、パスワードなしでsudoとして実行できます。

編集3:スクリプトコード:

#!/bin/bash

script_path="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
now=$(date +$1)
path="/media/backups/"$now
log_file="/media/backups/logs/"$(date +"%Y%m%d_%H%M%S")
log_folder=$script_path"/logs"

if [ ! -d $log_folder ]; then
    mkdir -p $log_folder
fi

{
    echo ""
    echo ""
    date +"%d %m %Y - %H %M %S"
    echo ""
    echo ""

    if [[ ! -d $path ]]; then
        sudo mkdir $path
    fi

    sudo rsync -avprh --delete /media/disk/ $path
    sudo rsync -avprh --delete /media/disk2 $path"/disk2/"

    sudo /usr/bin/touch $path

} > $log_file 2>&1

if grep -i -q "error" $log_file; then
/usr/bin/php /var/www/email.php "[email protected]" "Backup ERROR" "<pre>$(<$log_file)</pre>"
else
/usr/bin/php /var/www/email.php "[email protected]" "Backup OK" "<pre>$(<$log_file)</pre>"
fi

ベストアンサー1

おすすめ記事