crontab以退出状态12失败

时间:2013-05-08 13:35:33

标签: bash crontab

来自syslog的

May  8 01:00:01 mvtspro-main /USR/SBIN/CRON[22645]: (root) CMD (/usr/local/ky4k0b/cdrs_backup_daily.sh)
May  8 01:00:01 mvtspro-main /USR/SBIN/CRON[22638]: (CRON) error (grandchild #22645 failed with exit status 12)
来自/ etc / crontab的

mvtspro-main:/cdrs/backup# cat /etc/crontab
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
#
25 6    * * *   root    ntpdate pool.ntp.org
0 1 * * *       root    /usr/local/ky4k0b/cdrs_backup_daily.sh
0 2 1 * *       root    /usr/local/ky4k0b/cdrs_backup_monthly.sh
0 3 1 * *       root    /usr/local/lib/mvtspro/backupdb.php

我的剧本

mvtspro-main:/cdrs/backup# cat /usr/local/ky4k0b/cdrs_backup_daily.sh
#!/bin/sh
mask=`date --date="yesterday" +%Y%m%d\*`
arch_name=`date --date="yesterday" +%Y%m%d`
find /cdrs -type f -name "$mask"|zip -m /cdrs/backup/$arch_name.zip -@

我在哪里弄错了?谢谢! PS:如果我手动运行此脚本,它可以正常工作。

2 个答案:

答案 0 :(得分:0)

我记得和cron有同样的问题。在我的情况下,来自tar的过多输出没有被定向到任何地方,所以它会在缓冲区满了后阻塞脚本。将被调用脚本的输出重定向到/ dev / null对我有用(或者可能是设置MAILTO =“”)。

答案 1 :(得分:0)

/etc/init.d/cron restart

这很有用