PID1とは何か
連載ナビ
この連載は「Linuxを使えるようになる」ではなく、「Linuxがどう動いているのか」を理解するための実践シリーズです。
今回は Linuxを理解する 〜 LFSで学ぶLinux内部構造 〜 の Part 2 / 第4回として、仕組みのつながりを意識しながら学びます。
- 前回: processとは何か
- 次回: Linuxの起動プロセスを図解する
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は単なる番号ではない
- システム全体の親として重要
- コンテナ運用にも直結する知識