1. 程式人生 > 實用技巧 >【linux】crontab定時任務 不執行的問題排查

【linux】crontab定時任務 不執行的問題排查

今天一位朋友問我:老範 我的定時任務咋不執行,命令如下:

* * * * * /usr/bin/curl  http://www.test.com/index.php?a=login&m=crontab   >> /home/laofandata/cron.log 2>&1

隨即開始排查:

1 單獨訪問了這個url。成功!

2 我登陸寶塔面板。添加了訪問url的定時任務。 可以正常請求

3 檢視伺服器cron服務。發現沒啟動。 開啟下:

service crond start

4 新增一個定時任務,訪問百度,並寫入日誌 , 顯示成功

* * * * * /usr/bin/curl  http://www.baidu.com   >> /home/laofandata/cron_baidu.log 2>&1

此時我就納悶了。。為啥那個還不行呢。 查詢了資料發現一個問題。我們的連結中 帶 & 符號。 curl 服務不能正常解析,訪問不到。修改如下:

* * * * * /usr/bin/curl  'http://www.test.com/index.php?a=login&m=crontab'   >> /home/laofandata/cron.log 2>&1

其實就是在 這個連線上 加了 單引號 ! 完美解決!

番外:

Centos cron命令

service crond start 
service crond stop 
service crond reload
service crond status 

Ubuntu上。你需要把 crond 換成 cron

service cron start 
service cron stop 
service cron reload
service cron status