我有一个rsync命令,它可以进行各种复制:
0 0 * * * rsync -av --delete /media/VIDEOS/ /media/lacie1/backup/videos/
有没有办法停止rsync命令运行,如果源不可访问(即:不在线/挂载)?
你可以试试
0 0 * * * cd /media/VIDEOS/ && rsync -av --delete /media/VIDEOS/ /media/lacie1/backup/videos/
如果cd失败,将不会运行rsync命令。
如果你想让它失败默默
0 0 * * * [ -e /media/VIDEOS ] && rsync -av --delete /media/VIDEOS/ /media/lacie1/backup/videos/
Souds喜欢你正在做你的桌面计算机的午夜备份,你正在被cron守护进程垃圾邮件关于失败的备份。
简单和粗略的解决scheme是沉默cron,这可以通过两种方式来完成:
0 0 * * * rsync ..> / dev / null 2>&1
这将把stdout和stderrredirect到/ dev / null ..没有来自cron的邮件
另一个解决scheme是用MAILTO定义一个空的电子邮件
MAILTO =根
0 0 * * * script1
MAILTO =
0 0 * * * rsync ..
这也应该使脚本保持沉默。