Rails で rake タスクを実行する cron ジョブがあります。ログを見ると、タスクが実行されるたびに 4 回実行されていることに気付きました。問題は、実行中の cron インスタンスが 4 つあることです。
私は走りました:
/etc/init.d/crond stop
そして今は3つだけ残っています。
ランニング:
ps -ef | grep cron
私はこれを見る:
root 1029 1 0 Oct20 ? 00:00:01 crond
root 6980 6094 0 21:33 pts/0 00:00:00 grep cron
root 15170 1 0 Oct26 ? 00:00:00 crond start
root 15186 1 0 Oct26 ? 00:00:00 crond stop
そこで質問なのですが、他のインスタンスをどうやって停止すればいいのでしょうか。今停止コマンドを実行すると、次のメッセージが表示されます。
crond を停止しています: crond を停止できません: crond は実行されていません。[失敗]
何かアイデアはありますか? 他のインスタンスには別の名前がありますか? すべてのインスタンスを一度に終了する方法はありますか?
答え1
sudo killall crond
答え2
手動で殺す必要があるようです
killall crond
または
kill -9 pid1 pid2 ...
次にinit.dで再起動します。