web-dev-qa-db-ja.com

それがpsに表示されない場合、どのようにcronジョブを殺すのですか?またはそれをpsで表示するには?

私はcronjobを次のように設定しています:

~> crontab -l
0 * * * * /bin/bash -l -c 'cd /mnt/hgfs/kodiak && Rails_ENV=test bundle exec 
    rake nightly_tasks --silent 2>> ./log/tasks_errors.log'

Cronジョブがログに記録され、ログが更新されているため、cronジョブが実行されていることがわかります。ただし、psまたはps -ef | grep cronを使用すると、実行中のジョブが表示されません。

~> ps -ef | grep cron
 root      4228     1  0 09:14 ?        00:00:00 cron
 user      4233  3545  0 09:14 pts/3    00:00:00 grep --color=auto cron

同じコマンドをgrep rakeで試したところ、リストにレーキが表示されませんでした。私はpid 4228を殺そうとしましたが、それはrakeジョブの実行を止めませんでした。 3〜4回強制終了し、ログに出力が表示されていた(rakeタスクが最後まで実行された)。

このcronジョブを強制終了するにはどうすればよいですか?それは1時間で実行され、実行に約20分かかります(多くのことを実行し、テストしているため、毎時間実行しています)。トラブルシューティングを行っていますが、正しく実行されていない場合はログで確認できます。

1
jcollum

Cronはジョブを生成するので、それに関連する「cron」プロセスはないでしょう。 ps wwuxa |grep rake。あなたはすでにしたと言いますか?あなたが言及しているようにプロセスはそこにある必要があります、私はあなたが正しくやっていると思います、あなたは私のすべてのベースをカバーするためにpsのための私の「wwuxa」のことを試してみたいかもしれません。

2
roadmr