Linux 备份脚本无法运行

标签 linux amazon-web-services amazon-s3 backup

我正在使用 limux CentOS7 运行备份脚本,该脚本将创建 .tar 文件,然后将该文件发送到 S3 存储桶。

但是,当执行 cornjob 时,它只运行一半的脚本并创建 .tar 文件,但不会将其上传到 S3。

备份脚本;

TIME=`date +%b-%d-%y`            # This Command will add date in Backup File Nam            e.
FILENAME=backup-$TIME.tar.gz     #define Backup file name format.
SRCDIR=/opt                      # Location of Important Data Directory (Source of             backup).
DESDIR=/home/centos/backupfile   # Destination of backup file.
tar -cvf $DESDIR/$FILENAME $SRCDIR
aws s3 cp /home/centos/backupfile/$FILENAME s3://backup/

cronjob 是;

30 7 * * * /home/centos/backupfile/runbackup

当我通过运行 ./runbackup 手动运行备份文件时,它工作正常并将文件发送到 s3 存储桶。

我已经检查了 .tar 文件的权限,一切看起来都很好,但不太确定为什么它不起作用。我尝试过移动文件位置、更改 cronjob 设置,但没有成功。

有什么想法吗?

最佳答案

您是否尝试指定执行该命令的用户?像这样:

# Example of job definition:
# .---------------- minute (0 - 59)
# |  .------------- hour (0 - 23)
# |  |  .---------- day of month (1 - 31)
# |  |  |  .------- month (1 - 12) OR jan,feb,mar,apr ...
# |  |  |  |  .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# |  |  |  |  |
# *  *  *  *  * user-name  command to be executed
30 7 * * * root /home/centos/backupfile/runbackup

关于Linux 备份脚本无法运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47676211/

相关文章:

c - malloc 包装器代码问题

java - 如何诊断我们的 java IP 多播应用程序?

linux - 当我有 groupid 时如何获取 groupname

amazon-web-services - 使用 Rancher OS 运行 docker-compose

azure - 为什么我无法在 cmd 中设置环境变量。无法使用 azcopy 从 S3 复制

linux - bash 脚本没有在 nohup 中运行,但可以独立运行

maven - 如何实现 Web 服务的持续部署

php - PHP 的 Heroku 内存错误和从 S3 读取大文件

amazon-web-services - 有没有一种方法可以使用类似于谷歌存储 Write() 方法的 aws-sdk-go 将数据流式传输到 amazon s3 文件?

python - 将文件从一个 s3 存储桶复制到另一个存储桶的最简单的 lambda 函数