PK
パーネルカニック研究所
今日もどこかでkernel panic。
root@pk-lab:~#

PID1とは何か

連載ナビ

この連載は「Linuxを使えるようになる」ではなく、「Linuxがどう動いているのか」を理解するための実践シリーズです。

今回は Linuxを理解する 〜 LFSで学ぶLinux内部構造 〜 の Part 2 / 第4回として、仕組みのつながりを意識しながら学びます。

Linuxで最初に起動するユーザー空間プロセスがPID1です。

多くの環境ではsystemdがPID1になります。

この記事でわかること

  • PID1の責務
  • 子プロセス回収の重要性
  • コンテナで問題が起きる理由

図解テキスト


kernel
  -> PID 1 (init/systemd)
      -> all services/processes

PID1は孤児processの引受先

この回で実行するコマンド

上から順番に実行すれば、この回の内容を体験できます。

まずはそのままコピペして実行し、次に1行ずつ意味を確認してください。


ps -p 1 -o pid,comm,args
cat /proc/1/status | head -n 20

ハンズオン手順

1. ターミナルを開いて、上のコマンドを1行ずつ実行する

2. 出力結果を見て、分かったことを1行メモする

3. エラーが出たら、そのエラーメッセージをそのまま残す

4. 各コマンドが何を確認するためのものかを説明してみる

チェックポイント

  • コマンドが最後まで実行できた
  • 出力の中で重要な値を1つ説明できる
  • 次の回に進む前に、分からない単語を1つ調べた

今回理解できたこと

  • PID1は単なる番号ではない
  • システム全体の親として重要
  • コンテナ運用にも直結する知識