Oracle Solaris Live Upgrade など、すべてのインストール方法では、ブート対象の x86 システム上のディスクスライスを指定する際に findroot コマンドを使用するようになりました。 この拡張機能は、UFS ルートだけでなく Oracle Solaris ZFS ルートを含むシステムのブートもサポートします。この情報は、GRUB が使用する menu.lst ファイル内に格納されます。以前は、root コマンド root ( hd0.0.a) を使ってブート対象のディスクスライスを明示的に指定していました。
インストール方法には、Oracle Solaris Live Upgrade、Oracle Solaris JumpStart、インストール GUI プログラムなどがあります。
findroot コマンドのほかに、スライス (mysign, 0, a) 上の署名ファイルも使用されます。この場合の mysign は /boot/grub/bootsign ディレクトリにある署名ファイルの名前です。ZFS ルートからシステムをブートすると、ZFS GRUB プラグインが ZFS ファイルシステムを探して、fdisk パーティション 0 のスライス a にマウントしようとします。
署名ファイルの名前は、使用したインストール方式に応じて異なります。findroot コマンドで使用される命名規則の詳細は、「findroot コマンドで使用される命名規則」を参照してください。
インストールまたはアップグレードが完了したら、findroot コマンドを使用するそのほかのメニューエントリを GRUB メニューに追加できます。方法については、「x86: findroot コマンドを使用する GRUB メニューエントリを追加する方法」を参照してください。
ブートの署名は一意にする必要があります。Oracle Solaris ソフトウェアの複数のインスタンス間で複製される、システム生成の署名またはユーザーの署名を使用したり削除したりしないでください。そのようにすると、正しくない OS インスタンスがブートされたり、システムがブートできなくなる場合があります。
root コマンドは、Windows のブートなどの特定の場合に menu.lst ファイルで引き続き使用できます。ただし、findroot コマンドが優先される場合は、root コマンドは使用しないでください。
次の例は、findroot コマンドを使用する menu.lst ファイルエントリの形式を示しています。
title Solaris 10 s10x_nbu6wos_nightly X86 findroot (pool_rpool,0,a) kernel$ /platform/i86pc/multiboot -B $ZFS-BOOTFS module /platform/i86pc/boot_archive title Solaris failsafe findroot (pool_rpool,0,a) kernel /boot/multiboot kernel/unix -s -B console=ttyb module /boot/x86.miniroot-safe |
次の例は、Oracle Solaris ZFS ブートローダーをサポートするシステムの menu.lst ファイルを示しています。Oracle Solaris Live Upgrade を実行すると、ZFS ルートファイルシステムからブートするための情報がこのファイルに自動的に追加されます。
title be1 findroot (BE_be1,0,a) kernel$ /platform/i86pc/multiboot -B $ZFS-BOOTFS module /platform/i86pc/boot_archive title be1 failsafe findroot (BE_be1,0,a) kernel /boot/multiboot kernel/unix -s -B console=ttyb module /boot/x86.miniroot-safe |