Почему rdiff-backup не выполняется из bash как cron на Mac Os X
Я написал простой сценарий bash, который создает резервные копии с помощью rdiff-backup на Mac OS X Yosemite. Вот:
#!/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, он показывает только эхо и даже не запускает команды rdiff-backup.
Работа с ним в течение двух часов - безуспешно ((Отключение всех эхосигналов - безуспешно и т. Д. Может ли кто-нибудь помочь?
Crontab строка
* * * * * ./backup-data.sh 2>&1 > /Temp/cron_log.txt;
и cronjob работает
1 ответ
Вы должны добавитьPATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
в кронтаб.