Linuxで実行中のプロセスを見つけて強制終了する方法


プロセス管理は、Linuxのシステム管理の重要な側面の1つであり、killコマンドを使用したプロセスの強制終了が含まれます。

このハウツーでは、Linuxシステムで生産性の低いプロセスや不要なプロセスを強制終了する方法について説明します。

Linuxシステム上のプロセスは、アプリケーションまたはプログラムの実行中のオカレンスである可能性があります。プロセスを、オペレーティングシステムで実行されているタスクと呼ぶこともできます。

プロセスが実行されているとき、プロセスはある状態から別の状態に移行し続け、プロセスは次のいずれかの状態になる可能性があります。

  1. Running: meaning the process is either executing or it is just set to be executed.
  2. Waiting: meaning that the process is waiting for an event or for a system resource to carry out a task.

Linuxでの待機プロセスには、割り込み可能と割り込み不可能の2種類があります。

シグナルによって中断される可能性のある待機プロセスは割り込み可能と呼ばれ、ハードウェア条件で直接待機していて、どのような条件下でも中断できない待機プロセスは中断不能と呼ばれます。

  1. Stopped: meaning that the process has been stopped, using a signal.
  2. Zombie: meaning the process has been stopped abruptly and is dead.

この簡単な概要で、Linuxシステムでプロセスを強制終了する方法を見てみましょう。 kill、pkill、killall、xkillを使用してLinuxを実行しているプロセスを強制終了する方法については、すでにいくつかの記事を取り上げました。以下でそれらを読むことができます。

  1. A Guide to Manage Linux Processes Using Kill, Pkill and Killall Commands
  2. How to Kill Unresponsive Linux Processes Using Xkill Command

プロセスを強制終了する場合、killコマンドを使用して、名前付きシグナルを名前付きプロセスまたはプロセスのグループに送信します。デフォルトのシグナルはTERMシグナルです。

killコマンドは、多くの最新のシェルに組み込まれている関数でも、/ bin/killにある外部関数でもかまいません。

LinuxでプロセスPIDを見つける方法

Linuxでは、システム上のすべてのプロセスにPID(プロセス識別番号)があり、これを使用してプロセスを強制終了できます。

次のようにpidofコマンドを使用して、任意のプロセスのPIDを識別できます。

$ pidof firefox
$ pidof chrome
$ pidof gimp-2.8

Linuxでプロセスを強制終了する方法

プロセスPIDを見つけたら、プロセスを強制終了する方法を見てみましょう。この最初の例では、最初にプロセスのPIDを取得してから、それにシグナルを送信します。

gimpプロセスを強制終了したいので、次のようにします。

$ pidof gimp-2.8
$ kill 9378

プロセスが強制終了されたことを確認するには、pidofコマンドを実行すると、PIDを表示できなくなります。

$ pidof gimp-2.8

次のように、シグナルの名前または番号を使用して、名前付きシグナルをプロセスに送信することもできます。

$ pidof vlc
$ kill -SIGTERM 9541
$ pidof vlc

シグナル番号を使用してプロセスを強制終了します。

$ pidof banshee
$ kill -9 9647
$ pidof banshee

上記の例では、番号 9 はSIGKILLシグナルのシグナル番号です。

Linuxで複数のプロセスPIDを強制終了する方法

複数のプロセスを強制終了するには、次のようにPIDをkillコマンドに渡します。

$ pidof gimp-2.8
$ pidof vlc
$ pidof banshee
$ kill -9 9734 9747 9762

概要

Linuxでプロセスを強制終了する方法は他にもたくさんありますが、これらのいくつかの例は、プロセスを強制終了する概要を説明するのに役立ちます。 Linuxでプロセスを強制終了する方法を教えてください。また、コメントを介して他の方法を教えてください。