アンドロイド

LinuxのKillコマンド

’, Â, � etc... How to fix strange encoding characters in WP or other SQL database

’, Â, � etc... How to fix strange encoding characters in WP or other SQL database

目次:

Anonim

Linuxは優れた高度なオペレーティングシステムですが、完璧ではありません。 ときどき、一部のアプリケーションが不安定に動作し始め、応答しなくなったり、システムリソースを大量に消費したりすることがあります。 元のアプリケーションプロセスが完全にシャットダウンすることはないため、応答しないアプリケーションは再起動できません。 唯一の解決策は、システムを再起動するか、アプリケーションプロセスを強制終了することです。

最も一般的に使用される kill 使用して、誤ったプロセスを終了できるユーティリティがいくつかあります。

kill コマンド

kill は、BashやZshなど、ほとんどのBourne派生シェルに組み込まれているシェルです。 コマンドの動作は、シェルとスタンドアロンの /bin/kill 実行可能ファイルでわずかに異なります。

type コマンドを使用して、 kill を含むシステム上のすべての場所を表示します。

type -a kill

kill is a shell builtin kill is /bin/kill

上記の出力は、シェルのビルトインがスタンドアロンの実行可能ファイルよりも優先され、 kill を入力 kill たびに使用されることを示しています。 バイナリを使用する場合は、ファイル /bin/kill へのフルパスを入力します。 、Bashビルトインを使用します。

kill コマンドの構文は次の形式を取ります。

kill…

kill コマンドは、指定されたプロセスまたはプロセスグループにシグナルを送信し、それらをシグナルに従って動作させます。 シグナルが指定されていない場合、デフォルトは -15 (-TERM)です。

最も一般的に使用される信号は次のとおりです。

  • 1 HUP )-プロセスをリロードします。 9 KILL )-プロセスを強制終了します。 15 TERM )-プロセスを正常に停止します。

使用可能なすべてのシグナルのリストを取得するには、 -l オプションを指定してコマンドを呼び出します。

kill -l

信号は、3つの異なる方法で指定できます。

  1. 数字を使用する(例: -1 または -s 1 )。「SIG」プレフィックスを使用する(例: -SIGHUP または -s SIGHUP )。「SIG」プレフィックスを使用しない(例: -HUP または -s HUP )。

次のコマンドは互いに同等です。

kill -1 PID_NUMBER kill -SIGHUP PID_NUMBER kill -HUP PID_NUMBER

kill コマンドに提供されるPIDは、次のいずれかです。

  • PID がゼロより大きい場合、シグナルはIDが PID 等しいプロセスに送信されます PID がゼロに等しい場合、シグナルは現在のプロセスグループ内のすべてのプロセスに送信されます。 つまり、シグナルは、 kill コマンドを呼び出したシェルのGIDに属するすべてのプロセスに送信されます。 ps -efj コマンドを使用して、プロセスグループID(GID)を表示します PID -1 に等しい場合、シグナルは、コマンドを呼び出したユーザーと同じUIDを持つすべてのプロセスに送信されます。 呼び出しユーザーがルートの場合、シグナルはinitおよび kill プロセス自体を除くすべてのプロセスに送信されます PID -1 未満の場合、シグナルはプロセスグループeqのすべてのプロセスに送信されます。 PID

通常のユーザーは自分のプロセスにシグナルを送信できますが、他のユーザーに属するプロセスには送信できませんが、rootユーザーは他のユーザーのプロセスにシグナルを送信できます。

kill コマンドを使用したプロセスの終了

kill コマンドでプロセスを終了または強制終了するには、まずプロセスID番号(PID)を見つける必要があります。 これを行うには、 top ps pidof pgrep などのさまざまなコマンドを使用します。

Firefoxブラウザーが応答しなくなり、Firefoxプロセスを強制終了する必要があるとします。 ブラウザのPIDを見つけるには、 pidof コマンドを使用します。

pidof firefox

このコマンドは、すべてのFirefoxプロセスのIDを出力します。

6263 6199 6142 6076

プロセス番号がわかったら、 TERM シグナルを送信してすべてのプロセスを終了できます。

kill -9 2551 2514 1963 1856 1771

PIDを検索してプロセスを終了する代わりに、上記のコマンドを1つにまとめることができます。

kill -9 $(pidof firefox)

kill コマンドを使用したプロセスのリロード

kill のもう1つの一般的な使用例は、 HUP シグナルを送信することです。これは、プロセスに設定を再 HUP するように指示します。

たとえば、Nginxをリロードするには、マスタープロセスにシグナルを送信する必要があります。 NginxマスタープロセスのプロセスIDは、通常は /var/run ディレクトリにある nginx.pid ファイルで見つけることができます。

cat コマンドを使用して、マスターPIDを見つけます。

cat /var/run/nginx.pid

30251

マスターPIDが見つかったら、次のように入力してNginx設定を再読み込みします。

sudo kill -1 30251

上記のコマンドは、rootまたはsudo特権を持つユーザーとして実行する必要があります。

結論

kill コマンドは、プロセスにシグナルを送信するために使用されます。 最も頻繁に使用されるシグナルは SIGKILL または -9 で、指定されたプロセスを終了します。

ターミナルを殺す