$ kill [オプション] プロセスID |
プロセスを停止するには kill というコマンドを使用します。
プロセスID とは、各プロセスに付与される固有の識別番号です。ps コマンドによって表示される PID がこれにあたります。
代表的なオプションを以下に示します。
シグナル番号の一覧を表示します。
$ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR |
kill コマンドを使用する最も一般的な理由は、何らかの原因で終了することができなくなったプロセスを強制的に終了するためです。
例えば、プロセス ID が 555 のプロセスを停止します。シグナル番号を省略して kill コマンドを実行した場合は、15) SIGTERM が送信されます。
$ kill 555 |
しかし、15) SIGTERM でプロセスを終了できなかった場合は、1) SIGHUP を送信します。
$ kill -1 555 |
それでも、プロセスが終了しない場合には、プロセスを強制的に終了させる、9) SIGKILL を送信します。
$ kill -9 555 |
しかし、9) SIGKILL でプロセスを停止した場合、そのプロセスの子プロセスが残ってしまう可能性があります。このように、親プロセスが存在しない子プロセスはゾンビプロセスと呼ばれ、KILL シグナルを送信してもプロセスを停止することができない場合があります。
![]() | kill コマンドを実行するには、停止するプロセスの所有者かスーパーユーザーである必要があります。 |