Solaris のシステム管理 (基本編)

第 12 章 ブートプロセス (参照情報)

この章では、SPARC システム と x86 システムをブートするためのファームウェアについて説明します。また、各プラットホームのブートプロセスの概要も説明します。

この章の内容は次のとおりです。

システムのブート手順については、第 10 章「SPARC: システムのブート (手順)」または第 11 章「x86: システムのブート (手順)」を参照してください。

SPARC: ブート PROM

SPARC システムごとに、「モニター」と呼ばれるプログラムを格納している PROM (プログラム可能な読み取り専用メモリー) チップがあります。 モニターは、Solaris のカーネルが使用される前に、システムの動作を制御します。システムをオンにすると、モニターはシステムのハードウェアやメモリーを検査するセルフテスト手順を実行します。エラーが検出されなければ、システムは、自動ブートプロセスを開始します。


注 –

Solaris システムが動作する前に、以前のシステムの一部には PROM アップグレードが必要なものもあります。詳細については、ご購入先にお問い合わせください。


SPARC: ブートプロセス

次の表では、SPARC システムのブートプロセスについて説明します。

表 12–1 SPARC: ブートプロセスの説明

ブート段階 

説明 

ブート PROM 

1. PROM は、システム識別情報を表示し、セルフテスト診断を実行してシステムのハードウェアとメモリーを検査する 

 

2. PROM は一次ブートプログラム bootblk を読み込む。このプログラムの目的は、デフォルトのブートデバイスから二次ブートプログラム (ufs ファイルシステムにある) を読み込むことにある

ブートプログラム 

3. bootblk プログラムは二次ブートプログラム ufsboot を検索して実行し、それをメモリーに読み込む

 

4. ufsboot プログラムが読み込まれた後、ufsboot プログラムはカーネルを読み込む

カーネル初期設定 

5. カーネルが自身を初期設定し、ファイルの読み込みに ufsboot を使ってモジュールのロードを開始する。カーネルはルート (/) ファイルシステムをマウントするのに十分なモジュールをロードすると、ufsboot プログラムの対応づけを解除し、自身のリソースを使って動作を続ける

 

6. カーネルがユーザープロセスを作成し、/etc/inittab ファイルを読み取って他のプロセスを起動する /sbin/init プロセスを起動する

init

7. /sbin/init プロセスが実行制御 (rc) スクリプトを起動し、このスクリプトは一連の他のスクリプトを実行する。それらのスクリプト (/sbin/rc*) はファイルシステムを検査、マウントし、さまざまなプロセスを実行して、システム保守作業を実行する

x86: PC BIOS

カーネルが起動される前は、システムは、PC 上のファームウェアインタフェースである、読み取り専用メモリー (ROM) の Basic Input/Output System (BIOS) によって制御されます。

ハードウェアアダプタにオンボード BIOS を搭載することができ、それによってデバイスの物理的特性を表示したり、デバイスにアクセスしたりすることができます。

起動シーケンスの間、PC の BIOS はアダプタの BIOS があるかどうか調べ、あれば、それぞれのアダプタ BIOS をロードして、実行します。アダプタの BIOS はそれぞれセルフテスト診断を実行して、デバイス情報を表示します。

x86: ブートサブシステム

Solaris のブート時に、ブートシステムについて次の選択を行うことができます。

次の表に、主な x86 ブートインタフェースの目的を示します。以降の節では、各ブートインタフェースを詳細に説明し、例を示します。

表 12–2 x86: ブートサブシステム

ブートサブシステム 

目的 

一次ブートサブシステム 

このメニューは、現在ブート中のディスクに複数のオペレーティングシステム (Solaris オペレーティングシステムを含む) が含まれている場合に表示される  

二次ブートサブシステム 

Solaris リリースをブートするたびに表示される。自動ブートプロセスに割り込んで、Solaris Device Configuration Assistant を実行することを選択していない限り、Solaris リリースが自動的にブートされる 

Solaris Device Configuration Assistant ブートフロッピーディスク 

「Solaris Device Configuration Assistant」メニューを表示するには次の 2 つの方法がある  

  1. Solaris Device Configuration Assistant ブートフロッピーディスクまたは Solaris 9 Installation CD (CD-ROM ドライブからブートできるシステムのみ) を使用してシステムをブートする

  2. インストールしたディスクから Solaris ソフトウェアをブートするときに自動ブートプロセスに割り込む

「Current Boot Parameters」メニュー 

このメニューは、Solaris をディスク、CD-ROM、またはネットワークからブートするときに使用する。このメニューにはブートオプションが表示される 


注 –

Solaris Device Configuration Assistant ブートフロッピーディスクを作成する必要がある場合は http://www.sun.com/bigadmin/hcl/drivers/dca_diskettes/ を参照してください。


ブートプロセス中は、ブートサブシステムメニューは異なるデバイスとブートオプションを表示します。システムは何回かのタイムアウトの後で応答を受け付けなくなった場合、デフォルトの設定値を使って自動的にブートを継続します。ブートサブシステムメニューが表示されるたびに、ブートプロセスを停止することができます。また、自動的に継続させることもできます。

次の節では、各ブートサブシステムの画面の例を示します。

x86: Solaris リリースのブート

デバイスを識別する段階では、Solaris Device Configuration Assistant (デバイス構成用補助) は次の処理を実行します。

ブートの段階では、Solaris Device Configuration Assistant (デバイス構成用補助) は次の処理を実行します。

次の節では、デバイスを識別する段階で表示されるメニューの例を示します。デバイス出力は、各システム構成によって異なります。

x86: デバイス識別段階で表示される画面

Solaris Device Configuration Assistant (デバイス構成用補助) がシステム上のデバイスを識別するときに、いくつかの画面が表示されます。

x86: Device Configuration Assistant 画面

この画面は、Solaris Device Configuration Assistant (デバイス構成用補助) をブートするたびに表示されます。Solaris Device Configuration Assistant (デバイス構成用補助) はシステムがブートするたびに実行されますが、自動ブートプロセスではこのメニューは省略されます。


Solaris Device Configuration Assistant

The Solaris(TM) (Intel Platform Edition) Device Configuration Assistant
scans to identify system hardware, lists identified devices, and can
boot the Solaris software from a specified device. This program must be
used to install the Solaris operating environment, add a driver,
or change the hardware on the system.
 
> To perform a full scan to identify all system hardware, choose Continue.
 
> To diagnose possible full scan failures, choose Specific Scan.
 
> To add new or updated device drivers, choose Add Driver.

About navigation...
    - The mouse cannot be used.
    - If the keyboard does not have function keys or they do not respond, 
      press ESC. The legend at the bottom of the screen will change to 
      show the ESC keys to use for navigation.
    - The F2 key performs the default action.

F2_Continue		F3_Specific Scan		F4_Add Driver		F6_Help

x86: Bus Enumeration 画面

この画面は、Solaris Device Configuration Assistant (デバイス構成用補助) が自動検出できるデバイスのハードウェア構成データを集めているときに一時的に表示されます。


Bus Enumeration

Determining bus types and gathering hardware configuration data ...

Please wait ...

x86: Scanning Devices 画面

この画面は、特別なドライバだけで検出できるデバイスを Solaris Device Configuration Assistant (デバイス構成用補助) が手動で走査しているときに表示されます。


Scanning Devices

The system is being scanned to identify system hardware.

If the scanning stalls, press the system's reset button. When the
system reboots, choose Specific Scan or Help.


Scanning: Floppy disk controller

#######################
|      |        |         |         |         |
0	 		 20       40        60	       80       100

Please wait ...

x86: Identified Devices 画面

この画面は、システムで識別されたデバイスを表示します。この画面からは、「Boot Solaris」メニューに移動でき、また、キーボード構成の設定、デバイスの表示や編集、シリアルコンソールの設定、構成の保存や削除など、オプションのデバイス作業も実行できます。


Identified Devices

The following devices have been identified on this system. To identify
devices not on this list or to modify device characteristics, such as
keyboard configuration, choose Device Tasks. Platform types may be
included in this list.

ISA: Floppy disk controller
	ISA: Motherboard
	ISA: PnP bios: 16550-compatible serial controller
	ISA: PnP bios: 16550-compatible serial controller
	ISA: PnP bios: Mouse controller
	ISA: PnP bios: Parallel port
	ISA: System keyboard (US-English)
	PCI: Bus Mastering IDE controller
	PCI: Universal Serial Bus
	PCI: VGA compatible display adapter

F2_Continue   F3_Back   F4_Device Tasks   F6_Help

x86: ブート段階で表示されるメニュー

この段階では、システムをブートする方法を指定できます。

x86: Boot Solaris メニュー

「Boot Solaris」メニューからは、Solaris リリースをブートするデバイスを選択できます。また、autoboot やプロパティ設定の表示や編集など、オプションの作業も実行できます。ブートデバイスを選択し、「Continue」を選択すると、Solaris カーネルがブートを開始します。


Boot Solaris
Select one of the identified devices to boot the Solaris kernel and
choose Continue.

To perform optional features, such as modifying the autoboot and property
settings, choose Boot Tasks.

An asterisk (*) indicates the current default boot device.

> To make a selection use the arrow keys, and press Enter to mark it [X].

[X]  DISK: (*) Target 0:QUANTUM  FIREBALL1280A
on Bus Mastering IDE controller on Board PCI at Dev 7, Func 1
[ ]  DISK: Target 1:ST5660A
on Bus Mastering IDE controller on Board PCI at Dev 7, Func 1
[ ]  DISK: Target 0:Maxtor 9 0680D4
	on Bus Mastering IDE controller on Board PCI at Dev 7, Func 1
[ ]  CD  : Target 1:TOSHIBA  CD-ROM XM-5602B  1546
	on Bus Mastering IDE controller on Board PCI at Dev 7, Func 1

F2_Continue   F3_Back   F4_Boot Tasks   F6_Help

x86: 「Current Boot Parameters」メニュー

このメニューは、ローカルディスクから Solaris リリースをブートするたびに表示されます。デフォルトの Solaris カーネルからブートしたい場合は、5 秒間のタイムアウトが経過するのを待ちます。別のオプションでブートする場合は、タイムアウト期間が経過する前に、適切なオプションを選択します。


                     <<< Current Boot Parameters >>>
Boot path: /pci@0,0/pci-ide@7,1/ide@0/cmdk@0,0:a
Boot args: 
Type    b [file-name] [boot-flags] <ENTER>       to boot with options
or      i <ENTER>                                to enter boot interpreter
or      <ENTER>                                  to boot with defaults
 
 
                     <<< timeout in 5 seconds >>>
 
Select (b)oot or (i)nterpreter: 

x86: ブートプロセス

次の表では、x86 システムのブートプロセスについて説明します。

表 12–3 x86: ブートプロセスの説明

ブート段階 

説明 

BIOS 

1. システムの電源をオンにすると、BIOS がセルフテスト診断を実行してシステムのハードウェアとメモリーを検査する。エラーが検出されなければ、システムは自動的にブートを開始する。エラーが検出されると、復元オプションを示すエラーメッセージが表示される 

追加のハードウェアデバイスの BIOS がここで実行される 

 

2. BIOS ブートプログラムが、ブートデバイスの最初の物理セクターを読もうとする。ブートデバイス上のこの最初のディスクセクターにはマスターブートレコード mboot が格納されており、このレコードが読み込まれて実行される。mboot ファイルが見つからなかった場合は、エラーメッセージが表示される

ブートプログラム 

3. マスターブートレコード mboot には、アクティブなパーティションと、Solaris ブートプログラム pboot の位置を見つけるのに必要なディスク情報が格納されており、mboot は、pboot を読み込んで実行する

 

4. Solaris ブートプログラム pboot が一次ブートプログラム bootblk を読み込む。このプログラムは、ufs ファイルシステムにある二次ブートプログラムを読み込む

 

5. ブート可能なパーティションが複数ある場合、bootblkfdisk テーブルを読んでデフォルトのブートパーティションを探し、利用可能なパーティションのメニューを作成して表示する。ブートするパーティションを選択する際に、30 秒経過するとタイムアウトになる。これは、ブート可能なパーティションが複数ある場合にのみ発生する

 

6. bootblk はルート (/) ファイルシステムで二次ブートプログラム boot.bin または ufsboot を探し、実行する。Solaris Device Configuration Assistant (デバイス構成用補助) を起動するときは、5 秒以内に自動ブートに割り込みをかける

 

7. 二次ブートプログラム boot.bin または ufsboot/etc/bootrc スクリプトを実行するコマンドインタプリタを起動する。ここでシステムのブート方法を選択するメニューが表示される。デフォルトでは、カーネルが読み込まれ、実行される。ブートオプションを指定したり、ブートインタプリンタを起動したりするときは、5 秒以内に行う

カーネル初期設定 

8. カーネルは二次ブートプログラム boot.bin または ufsboot を使用してファイルを読み込み、カーネル自身を初期化して、モジュールの読み込みを開始する。カーネルはルート (/) ファイルシステムをマウントするのに十分なモジュールを読み込むと、二次ブートプログラムの対応づけを解除し、自身のリソースを使って動作を続ける

 

9. カーネルがユーザープロセスを作成し、/etc/inittab ファイルを読み取って他のプロセスを起動する /sbin/init プロセスを起動する

init

10. /sbin/init プロセスは実行制御 (rc) スクリプトを開始し、このスクリプトが一連の他のスクリプトを実行する。それらのスクリプト (/sbin/rc*) はファイルシステムを検査、マウントし、さまざまなプロセスを実行して、システム保守作業を実行する