2017-10-06 35 views
0

所以我試圖通過linux自動備份到S3存儲桶。Cronjob沒有在Linux中運行

我試圖運行的腳本

TIME=`date +%b-%d-%y`   
FILENAME=backup-$TIME.tar.gz  
SRCDIR=/opt/nexus      
DESDIR=/usr/local/backup    
tar -cpzf $DESDIR/$FILENAME $SRCDIR 
aws s3 cp /usr/local/backup/backup.tar.gz s3://s3backup 

的的cronjob運行該腳本是44 11 * * * ./backup.sh

但是每當我試圖運行備份腳本(通過更新的cronjob)它似乎並沒有一直在工作。

任何想法,爲什麼它不會工作?

+0

是您的用戶帳戶擁有的cron中的cronjob,還是在/ etc/crontab中? –

+0

我將用戶設置爲應該正確的centos – user3013325

+0

請在作業運行時使用'/ var/log/cron'中的內容更新問題 – Vorsprung

回答

1

您正在創建日期標記的備份文件,但試圖複製靜態文件名。嘗試將複製命令更改爲:

aws s3 cp $DESDIR/$FILENAME s3://s3backup 
1

不要在cron作業或腳本中使用相對路徑名稱。

44 11 * * * ./backup.sh 

而是使用腳本的完整路徑。

44 11 * * * <full_path>/backup.sh 

此外,使用完整路徑,在你的腳本:

<full_path>/tar -cpzf $DESDIR/$FILENAME $SRCDIR 
<full_path>aws s3 cp /usr/local/backup/backup.tar.gz s3://s3backup 

確保cron作業添加了誰的AWS憑據設置正確的用戶。