Linuxのkillコマンドは、プロセス管理やサーバ運用に欠かせない基本コマンドです。ここでは、シグナル・オプションの網羅的な解説から、具体的なコマンド例、応用テクニックまでをまとめました。
killコマンドは、指定したプロセスID(PID)にシグナルを送信し、プロセスの終了・一時停止・再開などの制御ができます。デフォルトで送信されるシグナルはSIGTERM(15番)です。
まずは、操作したいプロセスのPIDを確認します。
kill [PID] … デフォルト(SIGTERM=通常終了)シグナルを送信kill -[シグナル名または番号] [PID] … 指定したシグナルを送信kill -s [シグナル名または番号] [PID] … -sオプションでシグナル指定kill -l … 使用可能なシグナル一覧の表示kill 1234 # PID 1234のプロセスを通常終了
kill -9 9876 # 強制終了(SIGKILL)
kill -TERM 4585 # 通常終了
kill -STOP 2222 # 一時停止
kill -CONT 2222 # 停止プロセス再開
kill -l # シグナル一覧の表示| シグナル名 | ID | 意味 |
|---|---|---|
| HUP | 1 | ハングアップ(再起動や接続切断時の終了) |
| INT | 2 | キーボード割り込み(Ctrl+C) |
| QUIT | 3 | キーボード中止 |
| ILL | 4 | 不正命令 |
| ABRT | 6 | 異常終了 |
| KILL | 9 | 強制終了(無視不可) |
| SEGV | 11 | メモリ違反 |
| TERM | 15 | 通常終了(デフォルト) |
| STOP | 19 | 停止(無条件で一時停止、無視不可) |
| CONT | 18 | 停止解除 |
| オプション | 内容・用途 | サンプル |
|---|---|---|
| (なし) | SIGTERM(デフォルト)送信 | kill 1234 |
| -l | シグナル一覧表示 | kill -l |
| -s | シグナル指定送信 | kill -s KILL 1234 |
| -[ID/名] | シグナルIDまたは名で指定 | kill -9 1234 |
| -STOP | プロセス一時停止 | kill -STOP 1234 |
| -CONT | 停止プロセスを再開 | kill -CONT 1234 |
kill -9 [PID](SIGKILL)は、強制的にプロセスを即座に停止します。他のシグナルと違い、無視できません。killコマンドは多彩なオプションとシグナル指定により、Linuxプロセス管理に不可欠な機能を提供します。基本から強制終了、複数プロセス同時操作、シグナル一覧の表示まで、使い方を理解し、安全に運用しましょう。