linux crontab不执行问题解决方法

  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,以确定具体的失败原因。