Go to main content
Oracle® Solaris 11.3 システムのブートとシャットダウン

印刷ビューの終了

更新: 2016 年 11 月
 
 

x86: ブート時に GRUB メニューを編集してカーネル引数を追加する

x86 プラットフォームでは、ブート時に GRUB メニューを編集して、特定のブートエントリのブート属性およびカーネル引数を設定できます。これらの変更は次回にシステムをブートするときまで持続します。

特定のブートエントリのブート属性を永続的に設定するには、bootadm コマンドと change-entry サブコマンドを使用します。GRUB メニューの指定したブートエントリの属性を設定する方法を参照してください。

x86 ベースのシステムをブートすると、GRUB メインメニューが表示されます。このメニューには、現在システム上にあるすべてのブートエントリのリストが含まれます。特定のブートエントリを編集するには、矢印キーを使用してエントリを選択し、e と入力して、エントリを編集します。GRUB 編集画面で、$multiboot 行に移動し、行の末尾に追加のブートオプションやカーネル引数を入力します。

GRUB 編集メニューの $multiboot 行は次のようになります。

$multiboot /ROOT/transition/@/$kern $kern -B console=graphics -B $zfs_bootfs

たとえば、ブート時に e1000g ネットワークドライバを無効にし、kmdb をロードするには、次のように、指定したエントリの GRUB メニューを編集します。

$multiboot /ROOT/solaris/@/$kern $kern -B disable-e1000g=true -k -B $zfs_bootfs

GRUB 編集メニューを終了し、編集したばかりのエントリをブートするには、Control-X を押します。UEFI ファームウェアを搭載するシステムがあり、シリアルコンソールを使用していない場合、F10 キーを押すことによってもエントリがブートします。


注 -  ブート時に GRUB メニューを編集する予定がある場合、ブートシーケンス時に GRUB メニューが表示されるようにするため、reboot コマンドの –p オプションを使用して、システムをリブートする必要があります。

ブート時に GRUB メニューを編集する場合、次のカーネル引数とオプションを指定できます。

unix

ブートするカーネルを指定します。

–a

構成情報の入力を求めるプロンプトを表示します。

–i altinit

代替実行可能ファイルを原始プロセスとして指定します。 altinit は実行可能ファイルへの有効なパスです。

–k

カーネルデバッガを有効にした状態でシステムをブートします

–m smf-options

サービス管理機能 (Service Management Facility、SMF) のブート動作を制御します

復元オプションとメッセージオプションという、2 種類のオプションがあります

–r

再構成ブートを指定します。

接続されているすべてのハードウェアデバイスを検索してから、実際に見つかったデバイスだけに、ファイルシステムのノードを割り当てます。

–s

システムをシングルユーザー状態にブートします。

–v

詳細メッセージを有効にした状態でシステムをブートします。


注 -  eeprom ユーティリティーを使用し、さらに GRUB コマンド行で、パラメータを指定すると、GRUB コマンド行が優先されます。

詳細については、kernel(1M)のマニュアルページを参照してください。

x86: GRUB メニューを編集して、ブート時に –B prop=val カーネル引数を追加する

ブート時に特定のカーネル引数を指定できます。たとえば、–B prop=val オプションを指定して、Oracle Solaris システムコンソールを設定できます。次に、指定したブートエントリに –B prop=val オプションを追加して、ブート時に x86 プラットフォームでブートパラメータを変更できるさまざまな方法を示します。

–B acpi-enum=off

デバイスの ACPI (Advanced Configuration and Power Interface) 列挙を無効にします。

–B acpi-user-options=0x2

ACPI を完全に使用不可にします。

–B console=force-text

ブートに VGA テキストモードを使用することを指定します。ブート時に Oracle Solaris コンソールをリダイレクトするを参照してください。

–B console=graphics

コンソールでブートにグラフィックスモードを使用することを指定します。これにより、高解像度の状態が可能になります。

–B console=text

コンソールでブートにテキストモードを使用することを指定します。これにより、高解像度の状態が可能になります。

–B screen-#columns=value, screen-#rows=value

フレームバッファーコンソールの行数と列数を指定します。選択した行数または列数にもっとも適したフォントがシステムによって自動的に検出されます。このオプションは、フレームバッファーコンソールのサイズを最適化するために使用されます。

–B console=ttya

出力先をコンソールから ttya に変更します。

–B console=ttya,acpi-enum=off

出力先をコンソールから ttya に変更し、デバイスの ACPI 列挙を使用不可にします。

–B uefirt_disable=1

Oracle Solaris で UEFI 実行時サービスの使用を無効にします。

詳細は、boot(1M) のマニュアルページを参照してください。

使用例 12  Oracle Solaris システムコンソールのテキストモードブートパラメータの構成

テキストモードでは、コンソール出力はフレームバッファーに送信され、入力はキーボードから受信されます。テキストモードのバリエーションであるグラフィックスモードでは、キーが押されるか、またはコンソールの loginsulogin、または kmdb コマンドによってコンソールの対話が必要になるまで、アニメーションを含むイメージが表示されます。テキストの新しいプロパティー console=force-text は、VGA アダプタをビットマップデバイスとして使用しないようシステムに指示し、そのアダプタを VGA テキストモードに設定します。

コンソールに console=force-text プロパティーを設定しても、UEFI ファームウェアを搭載するシステムでは、VGA アダプタはテキストモードに移行しません

このプロパティーが存在しない場合、コンソールデバイスは、input-deviceoutput-device のプロパティーペアで指定されたデバイスに戻ります。コンソールのプロパティーおよびinput-deviceoutput-device のプロパティーペアのどちらも存在しない場合、コンソールはデフォルトでフレームバッファーとキーボードになります。

次の例は、ブート時にカーネルコマンド行で –B console=force-text プロパティーを指定する方法を示しています。

-B console=force-text
使用例 13  グラフィカル表示の有効化およびコンソールテキストモードのパラメータの構成

デフォルトでは、コンソールテキストモードは 80 列× 24 行です。このパラメータを再構成するには、–B オプションと screen-#columns =value および screen-#rows= value パラメータを使用します。

たとえば、グラフィカル表示を有効にして 100 列× 60 行のコンソール端末を割り当てるには、カーネルコマンド行で次のパラメータを指定できます。

-B console=graphics,screen-#columns=100,screen-#rows=60

ブート時に Oracle Solaris コンソールをリダイレクトする

Oracle Solaris 11 は、x86 ベースシステム上で、以前の VGA (Video Graphics Array) 640×480 16 色コンソールに比べて高い解像度と発色数をサポートしています。このサポートは、UEFI ファームウェアと従来の BIOS ファームウェアおよび VESA (Video Electronics Standards Association) オプション読み取り専用メモリー (ROM) を使用するシステムを対象に提供されます。サポートは、物理または仮想コンソールとしてグラフィックカードまたはフレームバッファーが使用されるときに限られることに注意してください。シリアルコンソールの動作への影響はありません。

この機能をサポートするために、次の 2 つのコマンド行 –B option =val パラメータを使用できます。

–B console=force-text

ブートに VGA テキストモードを使用することを指定します。

–B screen-#columns=value, screen-#rows=value

フレームバッファーコンソールの行数と列数を指定します。選択した行数または列数にもっとも適したフォントがシステムによって自動的に検出されます。このオプションは、フレームバッファーコンソールのサイズを最適化するために使用されます。

Oracle Solaris ブートエントリは、特定の一連のグラフィックモードを特定の順番で試みます。これらのモードは、grub.cfg ファイルの $multiboot 行に続く set gfxpayload 行に一覧表示されます。一覧表示されていないモードを希望する場合は、この行を変更できます。この変更を永続的にするには、エントリを custom.cfg ファイルにコピーする必要があります。そうしないと、次回に grub.cfg ファイルが自動生成されたときに、gfxpayload 設定が上書きされます。

set gfxpayload 引数の構文は次のようになります。

WidthxHeight[xbit-depth]

「x」は実際の文字です。例:

set gfxpayload=1024x768;1280x1024x32

この設定は GRUB がまず任意のビット深度 (高いビット深度を推奨) で、1024x768 モードの検索を試み、次に 32 ビット深度で 1280x1024 の検索を試みることを意味します。特殊なキーワード text はテキストモードを選択します。このキーワードは UEFI ファームウェアで機能しない場合があることに注意してください。keep キーワードは、グラフィカルコンソールタイプが使用されている場合に、GRUB が使用しているモードを維持し、そのモードを Oracle Solaris がフレームバッファーコンソール解像度として使用することを指定します。