linux crontab不执行问题解决方法

03-20

linux crontab不执行问题排查

问题描述:

在CentOS上配置了一个crontab,想让它每天执行一次,配置语法没有问题,但是却查不到程序执行的log,所以程序就没有执行。

crontab配置如下:

[plain]

00 11 * * * sh /opt/geo/search-task-2.0/bin/updateGeoIndex.sh

解决方案:

通过Google,得知可以通过/var/spool/mail/root(user name)查看crontab具体执行信息,于是

[plain]

vim /var/spool/mail/root

看到crontab的执行log如下:

[plain]

set JAVA_HOME=/usr/local/java/jdk1.6.0_35

/opt/geo/search-task-2.0/bin/updateGeoIndex.sh: line 23: bin/search-task.sh: No such file or directory

通过Log可以看出是因为找不到search-task.sh,原来是search-task.sh的路径有问题,修改路径之后,crontab成功运行。

所以大家如果发现crontab不执行的问题,首先可以去看/var/spool/mail/root这个Log,以确定具体的失败原因。