
UNIX Cafe | 第20回
止める前に知っておきたい|kill コマンドとシグナルの基本
Linux や UNIX を使っていると、「動かなくなったアプリを止めたい」
「サーバーの処理を安全に終わらせたい」そんな場面に出会います。
そこで登場するのが kill コマンドです。
名前から「強制終了の命令」と思われがちですが、
本当の役割は プロセスに“シグナル(合図)”を送ること にあります。
この記事では、
- シグナルとは何か
- kill コマンドの本当の意味
- よく使われるシグナルの違い
- 実際のコマンド例
を、初心者にもわかる言葉で整理していきます。
kill = 強制終了、ではありません
ミナちゃんkill って書いてあるけど、
いきなりアプリを消す命令なんですか?
kill は「殺す」という名前ですが、
実際には プロセスにメッセージを送るコマンドです。
そのメッセージが「シグナル」。
シグナルには種類があり、
- やさしく終了してほしい
- 今すぐ止まってほしい
- いったん止めて、あとで再開してほしい
といった 意味の違いがあります。
つまり kill は、プロセスと会話するための道具なのです。
シグナルとは何か?
シグナルは、プロセスに送られる 短い合図 です。
プロセスはその合図を受け取ると、
- 自分で後始末をして終了する
- すぐに停止する
- 一時停止して待機する
など、決められた動きをします。
代表的なシグナルは次のとおりです。
| シグナル | 意味 | イメージ |
|---|---|---|
| SIGTERM | 通常の終了 | 「そろそろ終わってください」 |
| SIGKILL | 強制終了 | 「今すぐ止まって」 |
| SIGSTOP | 一時停止 | 「ちょっと止まって」 |
| SIGCONT | 再開 | 「続きをどうぞ」 |



ただ止めるだけじゃなくて、
ちゃんと意味が分かれているんでだよ。
top でプロセスを確認する
シグナルを送る前に、
どのプロセスが動いているか を確認する必要があります。
そこで使うのが top コマンドです。



今どんなプロセスが働いているか、確認してみましょう!
top- 現在動いているプロセスが一覧表示されます
- PID(プロセスID)も確認できます
- 終了するときは
qを押します
PID は、
シグナルを送る相手を指定する番号です。
kill コマンドの基本形
もっとも基本的な使い方がこちらです。
kill -SIGTERM 1234SIGTERM:送るシグナル12345:プロセスID(PID)
このコマンドは、「PID 12345 のプロセスに、やさしく終了してくださいと伝える」という意味になります。
※ 数字は例です。実際の PID に置き換えてください。
停止と再開もできる
kill は「止める」だけでなく、
一時停止や再開にも使えます。
sleep 1000 & # 練習用プロセスを起動
echo $! # 直前の PID を表示
kill -SIGSTOP <PID> # 一時停止
kill -SIGCONT <PID> # 再開このように、プロセスの動きをコントロールすることも可能です。
設定を読み直す SIGHUP
SIGHUP は少し特殊なシグナルです。
kill -SIGHUP <PID>多くのサーバープログラムでは、
- プロセスは終了しない
- 設定ファイルだけを読み直す
という動作になります。
サービスを止めずに設定を反映できるため、サーバー運用ではよく使われます。
ここで少し休憩|よくある質問
シグナルは「やさしい運営」のための仕組み
シグナルは、とても小さな合図です。
でも、その一言でシステム全体の流れが変わることもあります。
だからこそ、
- いきなり SIGKILL を使わない
- まずは SIGTERM を送る
- 状況を確認してから操作する
という やさしい使い方 が大切です。
まとめ
- シグナルはプロセスに送る短いメッセージ
- kill コマンドは「終了」ではなく「合図」を送る道具
- シグナルごとに役割が違う
- top と組み合わせることで安全に操作できる
小さな合図を正しく使えるようになると、
UNIX の世界が、ぐっと扱いやすくなります。



小さな合図でも、
システムの流れは大きく変わるんだよ。
さらに学びたいあなたへ
📘 用途ごとに選ぶ Linux のおすすめ本








