ランレベル

ランレベル（英: Runlevel）とは、UNIX System V 系のinit処理を実装したオペレーティングシステムに見られる動作モードを意味する。一般に 0 から 6 までの7つのランレベルか、0 から 9 までの10のランレベルを使うことが多い。

通常、ランレベル 0 になるとコンピュータは停止し、ランレベル 6 ではリブートされる。それらの中間のランレベル（1 - 5）は、マウントするディスクドライブ、ネットワークサービスを起動するか否かなどで差異がある。低いランレベルは、保守や緊急の事態への対処に使われ、ネットワークサービスを起動しないことが多い。ランレベルの詳細はオペレーティングシステムによって異なるし、システムアドミニストレータによる設定も可能なので、システムによっても異なる。

ランレベルのシステムは、Version 7 Unix で使われていた /etc/rc スクリプトを置き換えたものである。

 標準のランレベル 
+標準ランレベルID名称説明0停止システムの停止、またはシャットダウンSシングルユーザモードネットワーク機能（デーモン）を起動しない（注1）6リブートシステムのリブート

注1）ほとんどのシステムでランレベル 1 をこの目的に使っている。システム保守のための安全な環境を提供するためのモードである。本来は、コンソール端末だけが動作しスーパーユーザー向けのログインシェルが動作した。ブート処理の変化により、このランレベルの位置づけが変わってきている。

 Linux 
Linuxでは、sysvinitプロジェクトによってランレベルが取り入れられた。Linuxカーネルがブートされると、init プログラムが /etc/inittab ファイルを読み込んで、各ランレベルでの動作を決定する。ユーザーがカーネルのブートパラメータとして指定しない限り、システムはデフォルトのランレベルで動作を開始する。

多くのシステムで、現在のランレベルを以下のようなコマンドで確認できる。

 $ runlevel         # as root

 $ who -r           # as any user

多くのLinuxディストリビューションでは、標準のランレベルに加えて、次のようなランレベルを定義している。

+典型的なLinuxのランレベルID名称説明1シングルユーザーモードネットワークやデーモンを起動せず、root 以外のログインを許可しない（注2）2マルチユーザーモードネットワークを起動しない（注3）3ネットワーク有のマルチユーザーモード通常のモード（注3）4未使用5X11ランレベル 3 + Xディスプレイマネージャ起動

注2）上記以外のこのランレベルの動作はシステムによって異なる。どのディストリビューションでも少なくとも1つの仮想端末を提供する。ディストリビューションによっては、スーパーユーザー向けログインシェルを起動させ、パスワードの入力を求められる。別のディストリビューションでは、任意のユーザーがログインできるログインシェルを起動させる。
注3）ランレベル2 と 3 が全く同じ場合もある（ネットワーク有のマルチユーザーモード）。

 Debian
 Debian 系の多くのディストリビューションでは、ランレベル 2 から 5 を区別しない。Debian FAQ on booting
 0 - 停止
 1 - シングル
 2 から 5 - マルチユーザーモードで、Xディスプレイマネージャも起動
 6 - リブート
 Ubuntu
 6.10（Edgy Eft）以降、Upstart を代替として採用しているが、スクリプトは従来通りで、互換ツールによって従来のランレベルをエミュレートしている。
 Red Hat LinuxSysV Init Runrevels Red Hat Linux 9: Red Hat Linux Reference Guide
 レッドハット系のディストリビューションでは、ランレベルは次のようになっている。
0 - 停止
1 - シングルユーザー
2 - 未使用/ユーザー定義可能
3 - マルチユーザー、コンソールログインのみ
4 - 未使用/ユーザー定義可能
5 - ランレベル 3 + Xディスプレイマネージャ起動
6 - リブート
どのサービスがどのランレベルで起動するかは、chkconfig ツールで管理できる。
 SUSE Linux 
 Red Hat とほぼ同じ設定である。
0 - 停止
1 - シングル
2 - マルチユーザー（ネットワーク無）
3 - マルチユーザー（ネットワーク有、Xディスプレイマネージャ無）
4 - 未使用/ユーザー定義可能
5 - ランレベル 3 + Xディスプレイマネージャ起動
6 - リブート
 Slackware  
 Slackware では、ランレベル 1 を保守用とし、ランレベル 2,3 は同じ設定で、ランレベル 4 では X Window System も起動する。
0 - 停止
1 - シングル
2 - マルチユーザー（Xディスプレイマネージャ無）
3 - マルチユーザー（Xディスプレイマネージャ無）
4 - マルチユーザー（Xディスプレイマネージャ有）
5 - 未使用/ユーザー定義可能
6 - リブート
 Gentoo LinuxInitscripts Gentoo Linux x86 Handbook
0 - 停止
1 - シングル
2 - マルチユーザー、ネットワーク無し
3 - マルチユーザー、ネットワーク＋Xディスプレイマネージャ
4 - ランレベル 3 と同じ
5 - ランレベル 3 と同じ
6 - リブート

 UNIX 
 UNIX System V Releases 3 および 4 
0 - シャットダウンを実行。ハードウェアがサポートしている場合、そのまま電源を切る。コンソールからのみ実行可能。
1 - シングルユーザーモード。root 以外のファイルシステムはマウントされない（既にマウントされていたらアンマウント）。コンソールプロセス以外のプロセスを終了させる。
2 - マルチユーザーモード
3 - マルチユーザーモード + RFS（Release 4 では NFS も）のファイルシステムをエクスポート
4 - マルチユーザー、ユーザー定義
5 - オペレーティングシステムを停止し、ファームウェアへ移行
6 - システムを停止し、デフォールトのランレベルを再起動
s, S - 1 と同じだが、現在の端末がコンソールとなる。
 Solaris 
0 - オペレーティングシステムを停止。SPARCの場合、OpenBootのプロンプトに移行
S - シングルユーザー、root ファイルシステムのみマウント（リードオンリー）
1 - シングルユーザー、全ローカルファイルシステムをマウント（リード/ライト）
2 - マルチユーザー、ほとんどのデーモンを起動
3 - マルチユーザー、ランレベル 2 の動作に加えて、ファイルシステムのエクスポート、その他のネットワークサービスを起動
4 - 予備のマルチユーザーモード。ユーザー定義
5 - シャットダウンし、ハードウェアがサポートしていれば電源を切る。
6 - リブート
 HP-UX 
0 - システム停止
S - シングルユーザー、コンソールのみ起動、root ファイルシステムのみをマウント（リードオンリー）
s - シングルユーザー、S とほぼ同じだが、現在の端末がコンソールとなる。
1 - シングルユーザー、全ローカルファイルシステムをマウント（リード/ライト）
2 - マルチユーザー、ほとんどのデーモンと Common Desktop Environment を起動
3 - マルチユーザー、2 に加えて、NFS のエクスポートを行う。
4 - マルチユーザー、CDE ではなく VUE を起動
5 - ユーザー定義
6 - ユーザー定義
 AIX 
 UNIX System V Release 4 のランレベル定義に従っていない。0 から 9 までのランレベルがあり、0 と 1 は予約されている。2 が通常のマルチユーザーモードで、3 以降はアドミニストレータが定義する。

 脚注 

 関連項目 
init

 外部リンク 
Runlevel Definition - by The Linux Information Project (LINFO)

らんれへる