1

私はLinuxとこのフォーラムに非常に慣れていません。10 台以上の Red Hat Linux 5.5 64 ビット サーバーを使用しているお客様の 1 つの問題に取り組んでいます。彼らは、停止スクリプトを使用して tomcat プロセスを停止したいと考えています (スクリプトは「kill -15」を使用します)。一部のサーバーでは、スクリプトは正常に機能し、数秒以内に tomcat プロセスを停止します。サーバーによっては、すぐに停止することもあれば、数分間実行し続けることもあり、最後に「kill -9」コマンドを使用して tomcat を停止する必要があります。ログは何も示していません。

このスクリプトが断続的に動作する理由がわかりましたか? ログなどでどのようにキャッチできますか?

4

1 に答える 1

0

SIGTERM(15)プロセスはシグナルを無視する場合があります。

ウィキペディアから: http://en.wikipedia.org/wiki/Unix_signal

SIGTERM シグナルは、プロセスの終了を要求するためにプロセスに送信されます。SIGKILL シグナルとは異なり、プロセスによってキャッチされて解釈されるか、無視される可能性があります。これにより、プロセスはリソースを解放し、必要に応じて状態を保存する適切な終了を実行できます。

SIGKILL(9)無視された場合、残っている唯一のオプションは、無視できないものを殺すことです。

于 2013-03-15T11:50:04.517 に答える