Cronjob 无法在 CentOS 6 中重新启动 apache

Cronjob 无法在 CentOS 6 中重新启动 apache

我正在使用 Plesk 12 + CentOS 6。

我通过 ssh 进入root帐户并使用crontab -e创建以下条目:

* * * * * service httpd restart

我希望它每分钟重新启动 apache(只是为了测试/调试它是否正常工作)

我使用检查了 apache 状态service httpd status,PID 始终相同,并且 apache 没有重新启动。

我确认/var/log/cron该命令正在执行。

Feb 7 16:11:01 srv104 CROND[15620]: (root) CMD (service httpd restart)

但是,其中的所有其他条目crontab均正确执行。

如果我在 shell 终端中手动执行命令service httpd restart,apache 将使用新的更新 PID 正确重新启动。

有没有什么预防措施无法service执行root cronjob


为什么我的 crontab 不工作?我该如何排除故障?有一些有用的提示,但没有解决我在上面原始问题中提到的具体情况。

工作解决方案:

如果我指定了完整路径/sbin/service,例如/sbin/service httpd restart在 cronjob 中,如接受的答案中提到的那样,它确实有效。

不确定是否与操作系统版本有关,但仅仅使用它对PATH/etc/crontab/的情况没有帮助。

答案1

用 替换您的命令/sbin/service httpd restart

或者正如评论中指出的那样:在中设置 PATH /etc/crontab,包括/sbin/usr/sbin应该可以。

相关内容