Solaris 10 インストールガイド (Solaris Live Upgrade とアップグレードの計画)

x86: GRUB ベースのブート (計画)

この節では、GRUB ベースのブートの基本と、GRUB メニューについて説明します。

Solaris OS のインストール時に、デフォルトで 2 つの GRUB メニューエントリがシステムにインストールされます。最初のエントリは Solaris OS エントリです。2 番目のエントリはフェイルセーフブートアーカイブで、システムの回復に使用されます。Solaris GRUB メニューエントリは、Solaris ソフトウェアのインストールおよびアップグレード処理の一環として自動的にインストールおよびアップグレードされます。これらのエントリは OS によって直接管理されるため、手動で編集しないでください。

Solaris OS の標準インストール中に、システム BIOS の設定を変更せずに GRUB が Solaris fdisk パーティションにインストールされます。この OS が BIOS ブートディスクにない場合は、次のいずれかの操作を行う必要があります。

ブートディスクに Solaris OS をインストールする方法をお勧めします。マシンに複数のオペレーティングシステムがインストールされている場合は、エントリを menu.lst ファイルに追加できます。これらのエントリは、システムを次にブートしたときに GRUB メニューに表示されます。

複数のオペレーティングシステムの詳細については、『Solaris のシステム管理 (基本編)』「GRUB ブート環境で複数のオペレーティングシステムをサポートする方法」を参照してください。

x86: ネットワークからの GRUB ベースのインストールの実行

GRUB ベースのネットワークブートを実行するには、PXE クライアント用に構成された DHCP サーバーと、tftp サービスを提供するインストールサーバーが必要です。DHCP サーバーには、DHCP クラスである PXEClient GRUBClient に応答する機能が必要です。DHCP 応答には、次の情報が含まれている必要があります。


注 –

rpc.bootparamd は、通常、ネットワークブートを実行する場合にサーバー側で必要とされるファイルですが、GRUB ベースのネットワークブートでは不要です。


PXE も DHCP サーバーも使用できない場合は、CD-ROM またはローカルディスクから GRUB をロードできます。次に GRUB でネットワークを手動で構成し、ファイルサーバーからマルチブートプログラムとブートアーカイブをダウンロードできます。

詳細については、『Solaris 10 インストールガイド (ネットワークインストール)』「PXE を使用したネットワーク経由のブートとインストールの概要」を参照してください。

GRUB メインメニューについて

x86 システムをブートすると、GRUB メニューが表示されます。このメニューには、選択可能なブートエントリの一覧が表示されます。「ブートエントリ」は、使用しているシステムにインストールされている OS インスタンスです。GRUB メニューは、構成ファイルの menu.lst ファイルに基づいています。menu.lst ファイルは、Solaris インストールプログラムによって作成され、インストール後に変更できます。menu.lst ファイルには、GRUB メニューに表示される OS インスタンスの一覧が記述されています。


例 5–1 GRUB メインメニュー

次の例では、GRUB メインメニューに Solaris オペレーティングシステムと Microsoft Windows オペレーティングシステムが表示されています。また、Solaris Live Upgrade ブート環境も second_disk という名前で一覧に表示されています。各メニューの項目については、続く説明を参照してください。


GNU GRUB version 0.95 (616K lower / 4127168K upper memory)
+-------------------------------------------------------------------+
|Solaris                                                            |
|Solaris failsafe                                                   |
|second_disk                                                        |
|second_disk failsafe                                               |
|Windows                                                            |
+-------------------------------------------------------------------+
Use the ^ and v keys to select which entry is highlighted. Press
enter to boot the selected OS, 'e' to edit the commands before
booting, or 'c' for a command-line.
Solaris

Solaris OS を指定します。

Solaris failsafe

Solaris OS が損傷した場合に、回復のために使用できるブートアーカイブを指定します。

second_disk

Solaris Live Upgrade ブート環境を指定します。second_disk ブート環境は、Solaris OS のコピーとして作成されました。luactivate コマンドによってアップグレードおよびアーカイブされています。ブート環境は、ブート時に使用できます。

Windows

Microsoft Windows OS を指定します。GRUB はこれらのパーティションを検出しますが、OS がブート可能かどうかは確認しません。


GRUB menu.lst ファイルについて

GRUB menu.lst ファイルには、GRUB メインメニューの内容の一覧が記述されています。GRUB メインメニューには、Solaris Live Upgrade ブート環境を含め、使用しているシステムにインストールされているすべての OS インスタンスのブートエントリが一覧表示されます。Solaris のソフトウェアアップグレード処理では、このファイルに対して行なった変更内容がすべて保持されます。

menu.lst ファイルに対する修正は、Solaris Live Upgrade エントリと一緒に、すべて GRUB メインメニューに表示されます。ファイルに対する変更点はすべて、システムを次にリブートしたときに有効になります。このファイルは、次の目的で変更できます。


注意 – 注意 –

GRUB menu.lst ファイルを使用して Solaris Live Upgrade エントリを変更しないでください。変更により、Solaris Live Upgrade の実行に失敗する可能性があります。


menu.lst ファイルを使用してカーネルデバッガによるブートなどのブート動作をカスタマイズできますが、カスタマイズする場合は eeprom コマンドを使用する方法をお勧めします。menu.lst ファイルを使用してカスタマイズすると、ソフトウェアのアップグレード時に Solaris OS エントリが変更される可能性があります。これにより、ファイルに加えた変更内容が失われます。

eeprom コマンドの使用法については 『Solaris のシステム管理 (基本編)』「eeprom コマンドを使用して Solaris ブートパラメータを設定する方法」を参照してください。


例 5–2 menu.lst ファイル

次に menu.lst ファイルの例を示します。


default 0
timeout 10
title Solaris
  root (hd0,0,a)
  kernel /platform/i86pc/multiboot -B console=ttya
  module /platform/i86pc/boot_archive
title Solaris failsafe
  root (hd0,0,a)
  kernel /boot/multiboot -B console=ttya -s
  module /boot/x86.miniroot.safe
#----- second_disk - ADDED BY LIVE UPGRADE - DO NOT EDIT  -----
title second_disk
  root (hd0,1,a)
  kernel /platform/i86pc/multiboot
  module /platform/i86pc/boot_archive
title second_disk failsafe
  root (hd0,1,a)
  kernel /boot/multiboot kernel/unix -s
  module /boot/x86.miniroot-safe
#----- second_disk -------------- END LIVE UPGRADE ------------
title Windows
  root (hd0,0)
  chainloader -1
default

タイムアウトした場合にブートする項目を指定します。デフォルトの設定を変更する場合は、番号を変更して一覧の別の項目を指定できます。最初のタイトルを 0 として数えます。たとえば、デフォルトを 2 に変更すると、second_disk ブート環境が自動的にブートします。

timeout

デフォルトのエントリをブートするまで、ユーザーの入力を待つ時間を秒単位で指定します。タイムアウトを指定しない場合は、エントリを選択する必要があります。

title OS name

オペレーティングシステムの名前を指定します。

  • これが Solaris Live Upgrade ブート環境の場合、OS name は新しいブート環境の作成時にその環境に指定した名前です。前の例では、Solaris Live Upgrade ブート環境の名前は second_disk です。

  • これがフェイルセーフブートアーカイブの場合、このブートアーカイブは主 OS が損傷したときの回復処理に使用されます。前の例では、Solaris フェイルセーフと second_disk フェイルセーフが Solaris および second_disk オペレーティングシステムの回復用ブートアーカイブです。

root (hd0,0,a)

ファイルのロード先となるディスク、パーティション、およびスライスを指定します。GRUB は、ファイルシステムの種類を自動的に検出します。

kernel /platform/i86pc/multiboot

マルチブートプログラムを指定します。kernel コマンドのあとに、必ずマルチブートプログラムを指定する必要があります。マルチブートのあとの文字列は、解釈されずに Solaris OS に渡されます

複数のオペレーティングシステムの詳細については、『Solaris のシステム管理 (基本編)』「GRUB ブート環境で複数のオペレーティングシステムをサポートする方法」を参照してください。


GRUB メニューを変更するための menu.lst ファイルの検出

GRUB メニューの menu.lst ファイルを検出するには、常に bootadm コマンドを使用する必要があります。アクティブな GRUB メニューを見つけるには、list-menu サブコマンドを使用します。menu.lst ファイルには、システムにインストールされているすべてのオペレーティングシステムが一覧表示されています。このファイルの内容は、GRUB メニューに表示されるオペレーティングシステムの一覧を記述したものです。このファイルに変更を加える場合は、「x86: GRUB メニューの menu.lst ファイルの検出 (作業)」を参照してください。