crontab執行指令碼出錯

2021-09-02 15:55:56 字數 670 閱讀 3737

最近經常碰到關於crontab不能執行的,初步總結了有以下幾個原因:

第一,指令碼的原因:大多數情況下,是我們的指令碼的問題,這種問題導致crontab不能執行的概率佔到70%以上。因為程式執行到某一步導致crontab終止執行,如,資料庫訪問出錯等。

第二,執行環境問題,當我們碰到第一情況下,一般都可以通過手動執行程式將問題扼殺在搖籃裡,一般情況下高手是不應該犯第一種錯誤的。問題是當我們手動執行成功而crontab不能執行的時候,筆者碰到一次就是執行環境的問題,例如相關路徑的設定問題。解決方案:在**最前面執行 source /home/user/.bash_profile,或者source /etc/profile。還有一種情況就是日誌未出現在相應的位置,這一般是使用了相對目錄而沒有使用絕對目錄。

第三,系統時間不正確。這種問題最好理解,也是比較常見和隱蔽的問題,解決方案:date -s ********

第四,就是我們的指令碼是否有可執行許可權。必須保證執行指令碼的使用者有執行改檔案的許可權。

第五,crontab 守護程序死掉了。這種情況是極少發生的,但也不排除,當我們實在是找不到其他原因的時候可以用。解決方案:重啟該程序。

進入目錄/var/spool/cron/裡面會有n個使用者名為檔名的檔案,只要建立過crontab的使用者在這裡都會有以該使用者名為檔名的檔案,該檔案的最後修改時間就是該使用者的的crontab的最後修改時間。

crontab計畫執行指令碼詳解

crontab是linux系統中在固定時間執行某乙個程式的工具,類似於windows系統中的任務計畫程式。一 安裝crontab yum install vixie cron 安裝 chkconfig crond on 設為開機啟動,安裝chkconfig yum installchkconfig ...

crontab 執行指令碼注意的問題

bin bash filepath cd dirname 0 pwd filename excute pro cd pid ps ef grep filename grep v grep awk pidnum echo pid wc awk export ld library path lib us...

手動執行指令碼正常,但crontab不執行

1.指令碼內容 0 2 cd usr local datax bin python datax.py job bidresourse.json 2.問題分析 2.1檢視crontab服務狀態systemctl status crontab,檢視日誌tail 222f var log cron 2.2...