この記事では、LPIC 学習向けに Linux のランレベルを整理します。ランレベルは SysVinit で使われるシステム状態の考え方で、現在の systemd target を理解する前提にもなります。
ランレベルとは
ランレベルは、システムがどの状態で動作しているかを表す番号です。古い Linux では、ランレベルごとに起動するサービスやログイン方式が変わりました。
| ランレベル | 意味 |
| 0 | 停止 |
| 1 | シングルユーザーモード |
| 2 | マルチユーザー。ディストリビューションにより意味が異なる |
| 3 | マルチユーザー。一般に CUI |
| 5 | マルチユーザー。一般に GUI |
| 6 | 再起動 |
現在のランレベルを確認する
runlevel
who -rsystemd target との対応
| ランレベル | systemd target |
| 0 | poweroff.target |
| 1 | rescue.target |
| 3 | multi-user.target |
| 5 | graphical.target |
| 6 | reboot.target |
注意点
- 現在の多くの Linux では systemd target が使われます。
- ランレベル 2 の意味はディストリビューションによって異なります。
- ランレベル 0 と 6 は停止・再起動なので、検証環境以外で不用意に実行しないようにします。
ランレベルを暗記で終わらせない
ランレベルは、古い Linux のシステム状態を表す番号です。ただし、現在は systemd target に置き換わっている環境が多いため、番号そのものを暗記するだけでは弱いです。3 は CUI のマルチユーザー、5 は GUI のマルチユーザー、という理解を、multi-user.target と graphical.target に接続して覚えます。
systemd 時代にどう読み替えるか
LPIC では SysVinit、ランレベル、init、telinit、Upstart など、現在の実務では直接触る機会が減った用語も出てきます。ただし、これは単なる古い知識ではありません。現代 Linux の systemd target、unit、PID 1 を理解するための前提として読むと意味があります。
| 古い文脈 | systemd 時代の対応 |
| init / PID 1 | systemd が PID 1 として動作する |
| runlevel 3 | multi-user.target |
| runlevel 5 | graphical.target |
| runlevel 0 | poweroff.target |
| runlevel 6 | reboot.target |
| init script | service unit |
| telinit | systemctl isolate などによる target 切り替え |
確認コマンドの対応
ps -p 1 -o pid,comm,args
systemctl get-default
systemctl list-units --type=target
runlevel
who -r古い環境を読む時は runlevel や /etc/init.d/ を確認し、現代的な環境では systemctl get-default や unit / target を確認します。LPIC の学習では、どちらか一方だけを覚えるのではなく、同じ概念が時代によって別の名前で表現されていると考えると整理しやすくなります。
まとめ
ランレベルは古い仕組みですが、Linux の起動状態を理解する基本概念です。LPIC では、ランレベルの意味と systemd target との対応をセットで覚えると、古い環境と新しい環境をつなげて理解できます。
関連する記事
- LPIC 学習ノート – Linux 基礎とコマンド整理
LPIC 関連記事のハブです。 - LPIC init コマンド – PID 1 とランレベルの基本
init とランレベルの考え方を整理します。 - LPIC systemd – Linux の起動とサービス管理
ランレベルと systemd target の対応を理解します。
参考書籍
書籍
Linux のコマンドライン操作を基礎から確認したい場合の参考書籍です。価格や在庫はリンク先で確認してください。
Amazon で見るこのリンクは Amazon アソシエイトリンクです。

