1

我编写了一个简单的 bash 脚本,在 Mac OS X Yosemite 上使用 rdiff-backup 进行备份。这里是:

#!/bin/bash

MODIF=`stat -f '%m' backup-data.txt`
NOW=`date +%s`
DIFF=$(($NOW-$MODIF))
BACKTIME=$((3600*8))

# EVERY BACKTIME/3600 HOURS SHOULD BE BACKUP
if (($DIFF < $BACKTIME)) ; then
 echo "Last sync was not a long time ago - ${DIFF} sec. Need ${BACKTIME}."
 exit 0;
fi

echo "${MODIF} ${NOW} start" > backup-data.txt
echo "sync start"

rdiff-backup -v 4 --force --print-statistics --exclude **templates_c** --exclude ***sess_* --exclude **.svn** --exclude ***.log --exclude ***.tpl.php /WebServers /Temp/backup/WebServers >> backup-data.txt
rdiff-backup -v 4 --remove-older-than 2W /Temp/backup/WebServers >> backup-data.txt
rdiff-backup -l /Temp/backup/WebServers >> backup-data.txt


echo "${MODIF} ${NOW} stop" >> backup-data.txt

echo "sync end"

它在终端上运行良好,但是一旦使用 crontab 执行,它只会显示 echo,甚至不会运行 rdiff-backup 命令。

处理了两个小时 - 没有成功((关闭所有回声 - 没有成功等)有人能帮忙吗?也许我错过了一些东西......

crontab 行是

* * * * * ./backup-data.sh 2>&1 > /Temp/cron_log.txt;

并且 cronjob 正在工作

4

0 回答 0