TOP比較データ> システム起動スクリプト
徹底比較!! Red Hat vs SUSE
徹底比較!! Red Hat vs SUSE

第4回:システム起動スクリプトとランレベルの比較

著者:日本アイ・ビー・エム  原田 真   2006/2/14
1   2  3  次のページ
システム起動スクリプト

   カーネルが起動した後は、まず最初に"/sbin/init"が実行されます。"/sbin/init"は、"/etc/inittab"の設定に従って各種プロセスを起動させます。このように、システム起動時に自動的に起動されるスクリプトがシステム起動スクリプトであり、rcスクリプトやinitスクリプトともいわれます。

   起動スクリプトだけではなく、デーモン起動スクリプトもrcスクリプトやinitスクリプトといわれる場合があり、混乱のもととなっています。そのため本連載では、すべてのランレベルで共通して必要な起動スクリプトを「システム起動スクリプト」と呼び、各ランレベルごとで自動的に実行される起動スクリプトや、システム起動後にユーザが手動で実行する起動スクリプトのことを、「デーモン起動スクリプト」と呼ぶことにします。

   これらの各種起動スクリプトが配置されるディレクトリは、RHEL4とSLES9で異なります。これは、運用時に混乱する大きな原因となりますので、よく理解する必要があります。

  RHEL4 SLES9
/etc/init.d/ デーモン起動スクリプト(手動)
(/etc/rc.d/init.d/へのリンク)
システム起動スクリプト
デーモン起動スクリプト(手動)
(ディレクトリ実体)
/etc/init.d/rc[0-6].d/ (存在しません) デーモン起動スクリプト(ランレベルごと)
(ディレクトリ実体)
/etc/rc.d/ システム起動スクリプト システム起動スクリプト
デーモン起動スクリプト(手動)
(/etc/init.d/へのリンク)
/etc/rc.d/init.d/
(ディレクトリ実体)
(存在しません)  
/etc/rc.d/rc[0-6].d/ デーモン起動スクリプト(ランレベルごと) デーモン起動スクリプト(ランレベルごと)
(/etc/init.d/rc[0-6].d/へのリンク)

表1:各ディレクトリに配置される起動スクリプト

   "/sbin/init"が実行されたあとは、すべてのランレベルに共通して以下のスクリプトが最初に起動されます。

  RHEL4 SLES9
最初の起動スクリプト /etc/rc.d/rc.sysinit /etc/init.d/boot

表2:"/sbin/init"が実行されたあとに最初に起動されるスクリプト

   SLES9では"/etc/init.d/boot"を実行すると、さらに"/etc/init.d/boot.d/"ディレクトリ以下にあるファイル名"Sxxboot.xxx"のスクリプトが続いて起動します。

   また、以下のスクリプトもランレベルにかかわらず、システム起動時に毎回必ず起動します。ユーザが起動時に実行させるコマンドなどはこのスクリプトに登録するのが一般的です。

  RHEL4 SLES9
ランレベル共通実行スクリプト /etc/rc.d/rc.local /etc/init.d/boot.local

表3:表2以外にシステム起動時に毎回必ず起動されるスクリプト


ランレベル

   システム起動スクリプトが実装された後は、各ランレベルに対応した処理が実行されます。ここでまず、ランレベルについて解説します。

   ランレベルとは、オペレーティングシステムの起動状態のモードをあらわす概念です。一般的なLinuxディストリビューションでは、0から6までの7つのシステム状態がランレベルとして定義されています。

ランレベル システム状態
0 システム停止
1 シングルユーザモード
2 ローカルマルチユーザモード(NFSなどはなし)
3 フルマルチユーザモード(テキストコンソール)
4 未使用
5 フルマルチユーザモード(グラフィカル環境)
6 システム再起動

表4:ランレベルの定義

   RHEL4とSLES9は表4の7つのランレベルを持っています。ランレベル0および6はシステムが稼働している状態ではないので、システム起動時に移行するランレベルは1から5のいずれかになります。通常はランレベル3かランレベル5が使用され、ランレベル3と5の違いは、デフォルトの状態がCUI(レベル3)かGUI(レベル5)かの違いです。

   ただ、ランレベル3でも"startx"コマンドによりGUIを利用することが可能です。以前はGUIが不安定だったため、ランレベル5でのサーバ運用はあまり推奨されていませんでした。現在のGUIはかなり安定していますが、システムリソースを余分に消費しますので、やはりランレベル3でのサーバ運用を推奨します。

   ランレベル1のシングルユーザモードはバックアップ時などに使用するモードです。バックアップ時に他のユーザがファイル操作をするとバックアップの整合性を保てなくなります。また、SLES9ではランレベル1ではなく、ランレベルSというシングルユーザモード用の設定ファイルも、別途用意されています。

注: 初出時に、RHEL4にランレベルSがないと誤解を招く表記をしておりました。お詫びして訂正させていただきます。

1   2  3  次のページ


日本アイ・ビー・エム 原田 真
著者プロフィール
日本アイ・ビー・エム株式会社  原田 真
日本アイ・ビー・エム株式会社 xSeriesテクニカル・サポート所属
1999年のLinuxサポートセンターの設立以来、一貫して先進Linux関連プロジェクトやLinuxビジネスの開発、特に新製品に関するサポートに従事。現在は、xSeriesハードウェア・プラットフォームのLinuxサポートを担当。


INDEX
第4回:システム起動スクリプトとランレベルの比較
システム起動スクリプト
  デーモン起動スクリプト
  デーモン起動スクリプトとランレベル