从cron运行rsync脚本…不能识别–max-size参数

这是一个棘手的问题:

我有一个cron作业,运行一个脚本,里面有很多rsync命令。 出于某种原因,在为每个rsync命令添加–max-size = 2G参数之后,作业错误会显示以下内容:

++++START+++++++++++++++++++++++++++++++ Tue Mar 9 16:53:00 EST 2010 rsync: --max-size=2G: unknown option rsync error: syntax or usage error (code 1) at main.c(1023) real 0m0.018s user 0m0.011s sys 0m0.006s ----END FONTS------------------------------- Tue Mar 9 16:53:00 EST 2010 -------------------------------------- 

这是我的cron:

 SHELL=/bin/sh PATH=/usr/local/bin:/bin:/sbin:/usr/bin:/usr/sbin #min hour mday month wday command #testing 53 16 * * 2 /Users/admin/Documents/scripts/test_rsync_script > /Users/admin/Documents/logs/$(date +\%y_\%m_\%d__\%H_\%M).log 2>&1 

这里是test_rsync_script的内容(我模糊了这个post的IP地址:

 echo "++++START+++++++++++++++++++++++++++++++" date time rsync --max-size=2G --archive --verbose --update -e ssh /Volumes/RAID/FONTS/ [email protected]:/Volumes/OFFSITE/FONTS --delete echo "----END FONTS-------------------------------" date echo "--------------------------------------" 

我已经在命令行上以root身份testing了cron命令,一切都很好! 我的cron有什么问题吗? 如果–max-size = 2G参数不存在,它工作正常。

你可能有两个不同版本的rsynccron$PATH与命令行不同。

尝试type -a rsync来显示可执行文件的位置。 然后在脚本中使用完整path指定正确的版本。

 /path/to/rsync rsync_options ...