【linux】crontab定時任務 不執行的問題排查
阿新 • • 發佈:2020-07-29
今天一位朋友問我:老範 我的定時任務咋不執行,命令如下:
* * * * * /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