2012-05-03 94 views
2

我運行cronjob時出現問題。沒有經驗,所以可能會監督一些不知名的東西。下面的腳本作品就像一個魅力(所有舊過濾器從數據庫中刪除)從shell中運行時:cronjob未執行

[email protected]:~> /usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb 

我使用chmod作出的可執行腳本。現在,我想這是經常使用一個cronjob運行:

[email protected]:~> crontab -e 

這個文件是空的,我把這個在一行:

* * * * * /usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb 

我希望腳本運行的每一分鐘,但沒有發生。在/etc/cron.deny中,只提到'guest',而/ etc/allow不存在。重新啓動我的系統也沒有幫助。

在crontab似乎proberly更新:

[email protected]:~> crontab -l 
# DO NOT EDIT THIS FILE - edit the master and reinstall. 
# (/tmp/crontab.f9Et2M installed on Thu May 3 14:04:47 2012) 
# (Cronie version 4.2) 
* * * * * /usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb 

但我希望在這裏一點也:

[email protected]:~> atq 
[email protected]:~> 

的的cronjob做一些事情。每分鐘將一個條目添加到/var/log/cron.log:

2012-05-03T15:27:01+02:00 linux /USR/SBIN/CRON[5276]: (dude) CMD (/usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb) 

問題是,作業未執行。它應該從數據庫中刪除一些記錄,但它不會。手動運行相同的腳本就可以做到這一點。

有人看到我錯過的(也許是微不足道的)事情嗎?

+0

究竟是什麼問題?該操作未執行或您沒有在屏幕上看到它?由於crontab操作在後臺運行。 –

+0

感謝您的回覆,並感到抱歉,因爲不清楚。我編輯了這個問題(問題在於它沒有執行,不需要在屏幕上看到它)。 – Jos

+0

你檢查過cron日誌嗎?你需要先激活它(例如使用debian:http://happy-coding.com/enable-crontab-logging-in-debian-linux/) – High6

回答

0

也許這會幫助,使用括號。

* * * * *冒號分開的命令到執行

檢查它。

+0

謝謝。我試過了,但沒有幫助。現在有兩對括號,所以它似乎已經自動添加括號。 – Jos

+0

其他一切似乎都很好。請分析您正在執行的執行.i.e。確保數據存在即將被刪除。或者在ruby文件中寫一些簡單的文件以確保進程正在執行調用。 – mtk