프로세스가 너무 오래 걸리는 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

관련 정보