Cronjob - Godaddy

Cronjob - Godaddy

我正在尝试为朋友从 GoDaddy 的共享托管环境中创建备份。整个网站文件大约 2GB,而 GoDaddy 不支持存档超过 20MB 的文件。唯一的选择是使用服务器端 tar。

基本上,当 Cron 仅完成一半工作时,我就会遇到问题,只能压缩 1GB+ 中的 300MB。

这是我正在使用的脚本,

#!/bin/bash
/bin/tar -cvzf $HOME/html/fullsite_test.tgz $HOME/html > $HOME/html/Out.log 2>&1

这是我在 Godaddy 的命令中填写的内容,

"$HOME/html/backup.sh"

有人知道为什么它没有按预期工作吗?我甚至处理了 stderr 和 stdout,所以我仍然不确定发生了什么……

注意:$HOME 是账户的绝对目录路径。

答案1

首先要注意的是,你备份的路径包括备份本身!!!!

假设这是 tar 的 gnu 版本....而不是

tar -cvzf $HOME/html/fullsite_test.tgz $HOME/html > $HOME/html/Out.log

尝试

tar -cvzf $HOME/html/backup.tgz $HOME/html --exclude backup > $HOME/html/backup.log

不确定 300Mb 的限制从何而来(您确定这是创建的文件的大小,还是您下载的文件的大小?)但(再次假设这是 Gnu tar)您可以执行以下操作:

tar -Mcvzf $HOME/html/backup.tgz $HOME/html \
   $HOME/html/backup.tgz $HOME/html \
   -L 200M -F backup_rotate.sh

其中 backup_rotate.sh 包含以下内容:

#!/bin/sh

mv -f $HOME/html/backup_vol4.tgz $HOME/html/backup_vol1.tgz
mv -f $HOME/html/backup_vol2.tgz $HOME/html/backup_vol3.tgz
mv -f $HOME/html/backup_vol1.tgz $HOME/html/backup_vol2.tgz
mv -f $HOME/html/backup.tgz      $HOME/html/backup_vol1.tgz

(它可以做一点改进 - 但你明白了吗?)

相关内容