シグナルの世界|kill入門とプロセスに送る“合図”の基本|UNIX Cafe

当ページのリンクには広告が含まれています。
シグナルの世界|kill入門とプロセスに送る“合図”の基本|UNIX Cafe

UNIX Cafe | 第20回

目次

「 kill = 強制終了 」だと思っていませんか?

本当は、kill は“プロセスにシグナルというメッセージを送るコマンド”。この記事では、SIGTERMやSIGKILLなど、よく使うシグナルの違いをUNIX Cafeの世界観でわかりやすく説明します。

シグナルって何? 初心者向けにやさしく説明

ミナちゃん

ユニ先生、シグナルって何ですか?
なんだか秘密の合図みたいな名前ですね…!

ユニ先生

うん、その感覚は正しいよ。
シグナルは、プロセスへ送る“短いメッセージ”なんだ。
合図に応じて、プロセスは動きを変えるんだよ。

ミナちゃん

メッセージで動きが変わるなんて、なんだか魔法みたいですね☕✨

プロセスにシグナルを送ると何が起きる?

シグナルは、
「そろそろ休もうか」
「続けて大丈夫」
「今日はもうおしまい」
といった
ちょっとした指示 を送る手段です。

この“ひと言”で、
プロセスは

  • 止まったり
  • 再開したり
  • 終了したり
    と、さまざまに変化します。

SIGTERM・SIGKILL・SIGSTOP の違いは?

ユニ先生

代表的なシグナルを紹介するね。

シグナル動作カフェたとえ
SIGTERMやさしく終了「今日は閉店、片付けて帰ろう」
SIGKILL強制終了「すぐにやめて!」
SIGSTOP一時停止「ちょっとストップ!」
SIGCONT再開「続けていいよ〜」
SIGHUP設定を読み直す「新しいレシピを確認してね」
ミナちゃん

わぁ…!
それぞれに“意味”があるんですね。
ただ止めるだけじゃないなんて、ちょっと感動です☕

まずは top でプロセスを確認する方法

ミナちゃん

今どんなプロセスが働いているか、確認してみましょう!

bash
$ top
ユニ先生

プロセスの一覧が出てきたね!

ミナちゃん

topを終了するときは、q を押す!
quiet(静かに戻る)みたいで覚えやすいですね~✨

kill コマンドは「終了」ではなく「シグナルを送る」コマンド

シグナルはkill コマンドで送ることができます。
名前に“kill”とありますが、終了以外のシグナルも送れる のがポイントです。

bash
$ kill -SIGTERM 12345

※ 12345 は PID(プロセスID)

ここで12345 は PID(プロセスID)。名札のような番号です。

ミナちゃん

へぇ〜
kill は“終了”の意味じゃなくて、“シグナルを送る”が本当の姿なんですね☕

“ちょっと待ってね” 停止と再開

ユニ先生

仕事中のスタッフに『ちょっと休んで』
『また続けて』って声をかけることもできるんだ。

bash
$ kill -SIGSTOP 12345
  kill -SIGCONT 12345
ミナちゃん

おぉ…
まさに“声かけ”ですね!

設定を読み直す SIGHUP

bash
$ kill -SIGHUP 12345
ユニ先生

これは“設定を読み直してね”という合図。
新しいレシピを渡すようなイメージだよ。

ミナちゃん

なるほど〜
お店の味をアップデートするんですね🍰

実践してみよう(Try it!)

下のコマンドを実行して、実際にプロセスを止めたり再開したりしてみましょう。

bash
$ sleep 1000 &
$ kill -SIGSTOP <PID>
$ kill -SIGCONT <PID>

ここで少し休憩|よくある質問

SIGTERM と SIGKILL の違いは?

SIGTERM は「片付けて終了」、SIGKILL は「即終了」です。

kill コマンドのエラーは何が原因?

権限不足、PID間違い、プロセス終了済みが多いです。

Windows でもシグナルは使えますか?

基本は Linux / Unix 型OSの仕組みです。

シグナルは、やさしい運営のために

ミナちゃん

シグナルって、小さいけれど大事なんですね。

ユニ先生

うん。
たったひと言で、お店の流れが変わることもある。
だからこそ、やさしく、正しく使うことが大切なんだ☕

まとめ

  • シグナル=プロセスへの短いメッセージ
  • kill は“シグナルを送る”コマンド
  • 役割ごとに用途がちがう
  • やさしく終了/停止/再開/再読込
ユニ先生

小さなサインで、プロセスの世界が大きく動くよ。

さらに学びたいあなたへ

📘 用途ごとに選ぶ Linux のおすすめ本

あわせて読みたい
レベル・用途別おすすめ Linux 本リスト|UNIX Cafe UNIX Cafe | 第65回 Linux の世界には、「はじめて触る人」「コマンドを覚えはじめた人」「サーバーに挑戦したい人」と、さまざまな段階があります。そんなときに、自分...
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次