2

cronjob の実行に問題があります。経験がないので、おそらく何か初心者を監督しています。次のスクリプトは、シェルから実行すると魅力的に機能します (古いフィルターはすべてデータベースから削除されます)。

dude@linux:~> /usr/bin/env /home/dude/RubyOnRails/myproject/script/rails runner /home/dude/RubyOnRails/myproject/script/delete_old_filters.rb 

chmod でスクリプトを実行可能にしました。これを cronjob を使用して定期的に実行するようにします。

dude@linux:~> crontab -e

このファイルは空だったので、これを 1 行に配置しました。

* * * * * /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 は問題なく更新されているようです。

dude@linux:~> 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

しかし、私はここでも少し期待していました:

dude@linux:~> atq
dude@linux:~>

cronjob は何かを行います。1 分ごとに /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)

問題は、ジョブが実行されないことです。データベースからいくつかのレコードを削除する必要がありますが、そうではありません。同じスクリプトを手動で実行すると、うまくいきます。

私が見逃した(おそらく些細な)ものを見た人はいますか?

4

1 に答える 1

0

ブラケットを使用すると、おそらくこれが役立ちます。

* * * * *(コロンで区切られた実行コマンド)

チェックしてください。

于 2012-05-10T20:32:08.063 に答える