GRUBの詳しい説明は、 info グラブ コマンドまたはGRUBサイトをご覧ください。Linuxドキュメンテーションプロジェクトには、GRUBを使用したマルチブートに関するMini-HOWTOがあります。
4.2.4。 初期化
カーネルはロードされると、 INIT in sbin そしてそれを実行します。
日時 INIT 起動すると、Linuxシステム上で自動的に起動するすべてのプロセスの親または祖父母になります。まず INIT 初期化ファイルを読み込んでいるのですが、 /etc/inittabこれは、 INIT 環境の初期設定スクリプトを読み込み、パスの設定、スワップの開始、ファイルシステムのチェックなどを行います。基本的に、このステップではシステムの初期化時に必要なすべての処理(クロックの設定、シリアルポートの初期化など)が行われます。
その後 INIT 読み続ける /etc/inittab このファイルは、各実行レベルでシステムがどのように設定されるかを記述し、デフォルトを設定します。 実行レベル実行レベルとは、プロセスの構成です。UNIX系システムはすべて、実行レベル1または実行レベルS(またはs)と呼ばれるシングルユーザーモードなど、異なるプロセス構成で実行できます。このモードでは、システム管理者のみがシステムに接続できます。システムやユーザーデータを損傷するリスクなしにメンテナンスタスクを実行するために使用されます。当然のことながら、この構成ではユーザーサービスを提供する必要がないため、すべてのサービスは無効になります。別の実行レベルとして、reboot実行レベル(実行レベル6)があります。これは、実行中のすべてのサービスを適切な手順に従ってシャットダウンし、システムを再起動します。
who 現在の実行レベルを確認するには:
ウィリー@ubuntu:~$ 誰 -r
実行レベル 2 2006-10-17 23:22
最後=S
ウィリー@ubuntu:~$ 誰 -r
実行レベル 2 2006-10-17 23:22
実行レベルの詳細については、次のセクション 4.2.5 を参照してください。
システムのデフォルトの実行レベルを決定したら、 INIT 適切なディレクトリを参照して、システムの実行に必要なバックグラウンドプロセスをすべて開始します。 rc その実行レベルのディレクトリ。 INIT 各killスクリプト(ファイル名がKで始まるもの)をstopパラメータ付きで実行します。その後、適切な実行レベルディレクトリにあるすべてのstartスクリプト(ファイル名がSで始まるもの)を実行し、すべてのサービスとアプリケーションが正しく起動されるようにします。実際、システムの起動が完了した後、以下のコマンドでこれらのスクリプトを手動で実行することもできます。 /etc/init.d/httpd stop or サービス httpd停止 ログイン ルートこの場合は、
Webサーバー。
特別なケース
システム起動時に、 rc2.d および rc3.d 通常は実行されます。その場合、サービスは停止されません(少なくとも永続的には停止されません)。開始されるサービスのみとなります。
実際にサービスを開始および停止するスクリプトは、 /etc/rc .dむしろ、 /etc/rc .d 実際のスクリプトを指すシンボリックリンクです。 の/ etc / init.dディレクトリシンボリックリンクとは、別のファイルを指すファイルに過ぎません。この場合、サービスを開始または終了するスクリプト自体に影響を与えずに作成および削除できるため、シンボリックリンクが使用されます。さまざまなスクリプトへのシンボリックリンクには特定の順序で番号が付けられており、その順序でサービスが起動されます。サービスを実際に制御するスクリプトを参照するシンボリックリンクの名前を変更することで、サービスの起動または終了の順序を変更できます。特定のサービスを別のサービスの直前または直後に開始または停止したい場合は、同じ番号を複数回使用できます。以下の例では、
/etc/rc5.dここで、 クローン および xfs どちらも「S90」で始まるリンク名から起動されます。この場合、スクリプトはアルファベット順に起動されます。
[jean@blub /etc/rc5.d] ls K15httpd@ K45named@ | S08ipchains@ | S25netfs@ | S85gpm@ |
K16rarpd@ K46radvd@ | S08iptables@ | S26apmd@ | S90crond@ |
K20nfs@ K61ldap@ | S09isdn@ | S28autofs@ | S90xfs@ |
K20rstatd@ K65identd@ | S10ネットワーク@ | S30nscd@ | S95アナクロン@ |
K20rusersd@ K74ntpd@ | S12syslog@ | S55sshd@ | S95atd@ |
K20rwalld@ K74ypserv@ | S13ポートマップ@ | S56rawデバイス@ | S97rhnsd@ |
K20rwhod@ K74ypxfrd@ | S14nfslock@ | S56xinetd@ | S99local@ |
K25squid@ K89bcm5820@ | S17キーテーブル@ | S60lpd@ | |
K34yppasswdd@ S05kudzu@ | S20ランダム@ | S80sendmail@ |
後 INIT 実行レベルを経てデフォルトの実行レベルに到達すると、 /etc/inittab スクリプトフォーク ゲッティ 各仮想コンソールのプロセス (テキスト モードのログイン プロンプト)。 ゲッティ tty回線を開き、モードを設定し、ログインプロンプトを表示し、ユーザー名を取得し、そのユーザーのログインプロセスを開始します。これにより、ユーザーはシステムに対して認証を行い、システムを利用できるようになります。デフォルトでは、ほとんどのシステムは6つの仮想コンソールを提供していますが、 inittab ファイルでは、これは設定可能です。
/etc/inittab 伝えることもできる INIT ユーザーが押した場合の処理方法 Ctrlキー+他の+削除 コンソールで。システムはすぐに電源を入れ直すのではなく、適切にシャットダウンして再起動する必要があるため、 INIT コマンドを実行するように指示される /sbin/shutdown -t3 -r 今例えば、ユーザーがこれらのキーを押したときなどです。さらに、
/etc/inittab 何を述べているか INIT システムに UPS ユニットが接続されている場合は、停電時に行うべきこと。
ほとんどのRPMベースのシステムでは、グラフィカルログイン画面は実行レベル5で起動され、 /etc/inittab というスクリプトを実行します /etc/X11/prefdmを選択します。 プレファドム スクリプトは、Xディスプレイマネージャを実行する。 /etc/sysconfig/デスクトップ ディレクトリ。これは通常 gdm GNOMEを実行している場合、または KDM KDEを使っている場合は、これらを混在させることもできます。また、 xdm 標準の X インストールに付属しています。
しかし、他にも可能性はあります。例えばDebianでは、各ディスプレイマネージャごとにinitscriptがあり、その内容は /etc/X11/デフォルトディスプレイマネージャー どちらを起動するかを決定するために使用されます。グラフィカルインターフェースの詳細については、セクション7.3を参照してください。最終的には、システムのドキュメントで、より高レベルの機能について詳細が説明されます。 INIT.
AIマーケティング業界は、 / etc / default および / etc / sysconfig ディレクトリには様々な機能やサービスのエントリが含まれており、これらはすべて起動時に読み込まれます。システムのデフォルト設定を含むディレクトリの場所は、Linuxディストリビューションによって多少異なる場合があります。
グラフィカルユーザー環境以外にも、多くのサービスが起動される可能性があります。すべてがうまくいけば、ブートプロセスが完了するとログインプロンプトまたはログイン画面が表示されるはずです。