您好我有一个shell脚本,其中包含ubuntu 12.04 LTS上的s3cmd命令。 我为这个shell脚本配置了cron,它适用于本地环境,但不会将文件推送到s3。但是当我手动运行shell脚本时,它会将文件推送到s3而不会出现任何错误。我检查了日志,没有找到任何内容。这是我的shell脚本。
#!/bin/bash
User="abc"
datab="abc_xyz"
pass="abc@123"
Host="abc1db.instance.com"
FILE="abc_rds`date +%d_%b_%Y`.tar.gz"
S3_BKP_PATH="s3://abc/db/"
cd /abc/xyz/scripts/
mysqldump -u $User $datab -h $Host -p$pass | gzip -c > $FILE | tee -a /abc/xyz/logs/app-bkp.log
s3cmd --recursive put /abc/xyz/scripts/$FILE $S3_BKP_PATH | tee -a /abc/xyz/logs/app-bkp.log
mv /abc/xyz/scripts/$FILE /abc/xyz/backup2015/Database/
#END
这真的很奇怪。任何建议都会有很大的帮助。
答案 0 :(得分:0)
检查在crontab中配置的运行用户是否在环境中具有正确的权限和密钥。
我猜这些密钥是在env文件中配置的,因为它们不在脚本中。