現在実行中のクローンタブを一覧表示して停止します。

現在実行中のクローンタブを一覧表示して停止します。

cronjobを作成しましたが、長い間実行されていましたが、今は停止する方法がわかりません。

答え1

残念ながら、このページとGoogleの結果に記載されている他のページでは、保留中のクローン操作を処理する方法についてpstreeに言及している人はいません。

pstree

ツリーのクローン部分を見る

答え2

シェルスクリプトラッパーがある場合は、cronjobが十分に長く実行されている場合はタイムアウトする必要があると思います。 cronjobの呼び出し中にタイムアウトが発生した場合、ラッパーはSIGHUPまたはSIGALARMを送信する必要があります。このような:

50 * * * * /usr/bin/my_cron_wrapper_timeout -t 1 /usr/bin/my_command_cron_job_to_run

このcron_wrapper_timeoutは、デフォルトで-tスイッチオプションを使用して1時間経過後にタイムアウト信号を送信するようになっています。その後、kill -HUPcronjobにシグナルを送信する必要があり、プロセスも収集され、それ自体が終了/終了します。

または、ALARMシグナルタイムアウトを処理してスムーズに消える前にクリーンアップするように、cronjob自体にコードを書く必要があります。

編集する

これが私の言うことです:ウォッチングhttp://chihungchan.blogspot.com/2011/03/no-more-hanging-jobs-in-cron.html

答え3

crontabが実行を開始したプロセスを停止する必要があります。

#kill -HUP PID (PID: Process ID is the process running)

PIDが実行中のプロセス(および追加情報)にどのように関連するかを確認するには、topコマンドを使用して列の順序を変更し、<次を使用します。>

また、ps -ax|grep [your_process_file]選択した名前でフィルタ処理された実行中のプロセスを一覧表示します。

-座る=壊す

答え4

まず、このコマンドを使用してワーカープロセスを確認します。

ps -o pid,sess,cmd afx | egrep "( |/)cron( -f)?$"

このコマンドの出力は次のとおりです。

599  599 cron
4288  599 \_ CRON

次に、このコマンドでプロセスを終了します。

pkill -s 4288

関連情報