在測試crontab執行腳本的時候,修改了linux的系統時間,crontab不執行了。
今天在寫服務器的perl腳本的時候,在完成一版腳本打算通過crontab來測試一下呢,因為直接執行腳本文件是沒有問題的,但是當配置到crontab定期執行時就會出現問題,到了指定的時間了,但是腳本文件沒有被執行。
后來通過goole搜索到了原因,因為我在測試的時候是直接修改了linux的系統時間,例如:date -s "2016-05-09 01:29:30“ ,因為我的腳本設置在了凌晨1點30分執行,(30 1 * * * /usr/bin/perl /www/bin/123.pl >> /www/bin/123.log)。
所以當我把時間設置好之后,等了半分鐘后,腳本也沒有執行。
后來發現在修改過時間后必須手動重啟crontab,指令如下:
/etc/init.d/crond restart
只有重啟crontab才可以,重啟服務器是沒有作用的。
還有一個解決辦法,也是網上找到的,但是沒有試,或許會幫到其他人吧:
設置時區,然后重啟crond服務:
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime service crond restart
作者:紀莫
歡迎任何形式的轉載,但請務必注明出處。
限于本人水平,如果文章和代碼有表述不當之處,還請不吝賜教。
歡迎掃描二維碼關注公眾號:Jimoer
文章會同步到公眾號上面,大家一起成長,共同提升技術能力。
聲援博主:如果您覺得文章對您有幫助,可以點擊文章右下角【推薦】一下。
您的鼓勵是博主的最大動力!


浙公網安備 33010602011771號