Centos6
CentOS 6 中 Cronjob 無法重啟 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/
並沒有幫助。
將您的命令替換為
/sbin/service httpd restart
.或者正如評論中指出的那樣:在 PATH 中設置一個 PATH
/etc/crontab
,包括/sbin
並且/usr/sbin
應該這樣做。