CRONTAB 任务执行失败

问题背景:
每天数据库自动备份并自动发出邮件。  手动执行脚本没有任何问题, 但放在CRONTAB 则无法执行。
 
排查过程:
查找日志,发现系统日志里面没有CRONTAB的日志。
1. 开启日志,我这里为UBUNTU系统:
vi /etc/rsyslog.d/50-default.conf
#cron.*                          /var/log/cron.log

将这一内容的注释取消, 并重启SYSLOG:

service rsyslog  restart

2. 执行脚本执行时间调为最近的一个时间,待其执行,并查看日志:

tail -100f /var/log/cron.log
Dec  7 13:55:01 DB-GD2A-252-105 CRON[20064]: (dbadmin) CMD (/usr/bin/python /home/dbadmin/sh/send_mail.py >/dev/null 2>&)
Dec  7 13:55:01 DB-GD2A-252-105 CRON[20062]: (CRON) info (No MTA installed, discarding output)
在这里我们有一个错误产生,产生这个错误的原因是CRONTAB执行脚本时不会直接报错,而是会以邮件的形式发送到邮箱,如果没有配置,则会报出这个错误。
解决办法:
00 14 * * * /usr/bin/python /home/dbadmin/sh/send_mail.py >/dev/null 2>&1
在这一条计划任务后加 >/dev/null 2>&1 即可解决此问题。
经过上面的方法修正好,CRONTAB能正常执行。
posted @ 2017-12-07 14:14  SMALL-D  阅读(519)  评论(0编辑  收藏  举报