JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris 11.1 システムのブートおよびシャットダウン     Oracle Solaris 11.1 Information Library (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  システムのブートとシャットダウン (概要)

2.  x86: GRand Unified Bootloader の管理 (タスク)

x86: GRUB 2 の紹介

x86: GRUB 2 構成の説明

x86: GRUB 2 パーティションおよびデバイス命名スキーム

x86: GRUB 2 と GRUB Legacy のタスクの比較

x86: GRUB Legacy システムを GRUB 2 をサポートするリリースにアップグレードする

x86: GRUB Legacy システムを GRUB 2 をサポートするリリースにアップグレードする方法

x86: GRUB Legacy メニューエントリが GRUB 2 に移行される方法

x86: GRUB 2 と GRUB Legacy のブート環境を同じシステムで保守する

x86: bootadm コマンドを使用して GRUB 構成を管理する

x86: GRUB メニューエントリを表示する方法

x86: GRUBメニューを手動で再生成する方法

x86: GRUB メニューの保守方法

x86: GRUB メニューの指定したブートエントリの属性を設定する方法

x86: GRUB メニューにブートエントリを追加する方法

x86: GRUB メニューからブートエントリを削除する方法

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

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

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

x86: GRUB 構成のカスタマイズ

x86: 高度な GRUB 管理とトラブルシューティング

x86: bootadm install-bootloader コマンドを使用して GRUB 2 をインストールする

x86: ブートローダーをインストールする方法

x86: ルートプールの復元後にブートローダーをインストールする方法

x86: デフォルトではない場所に GRUB をインストールする方法

x86: GRUB 2 がインストールされているシステムに GRUB Legacy をインストールする

x86: GRUB 2 がインストールされているシステムに GRUB Legacy をインストールする方法

3.  システムのシャットダウン (タスク)

4.  システムのブート (タスク)

5.  システムのネットワークからのブート (タスク)

6.  システムのブートのトラブルシューティング (タスク)

索引

x86: GRUB Legacy システムを GRUB 2 をサポートするリリースにアップグレードする

このセクションでは、次の情報について説明しています。

x86: GRUB Legacy システムを GRUB 2 をサポートするリリースにアップグレードする方法

デフォルトのブートローダーとして GRUB 2 をサポートする Oracle Solaris リリースの新規インストールの場合、インストールを実行する前に必要なものは何もありません。

Oracle Solaris 11.1 以上へのアップグレードの場合、アップグレードの前にいくつかの前提条件となるパッケージをインストールする必要があります。これらのパッケージは Oracle Solaris パッケージリポジトリに含まれます。

始める前に

システムを GRUB 2 をサポートするリリースにアップグレードする前に、次を実行します。

  1. 管理者になります。

    『Oracle Solaris 11.1 の管理: セキュリティーサービス』の「割り当てられている管理権限を使用する方法」

  2. 前提条件となるパッケージをインストールします。
    $ pkg update
  3. 手順 2 で作成したばかりの新しいブート環境にシステムをリブートします。
  4. システムが新しいブート環境で実行したら、次のコマンドを実行して、アップグレードを完了するために必要な修正プログラムで pkg パッケージを更新します。
    $ pkg update pkg

    このコマンドを実行すると、*pkg に一致する名前を持つすべてのパッケージが更新されます。これは pkg コマンドとその依存関係を含むパッケージです。

  5. Oracle Solaris 11.1 へのアップグレードを完了するには、もう 1 回、次のように、pkg update コマンドを実行します。
    $ pkg update --accept

    注 - --accept オプションを指定して、表示されているパッケージのライセンスの条件に同意し、受け入れることを示す必要があります。


    最後の更新で、デフォルトのシステムブートローダーとして GRUB 2 がインストールされます。更新によって、GRUB Legacy menu.lst ファイルの内容に基づく grub.cfg ファイルも作成されます。

    新しいブート環境がアクティブになると、GRUB Legacy 構成が GRUB 2 に移行され、GRUB 2 がシステムのデフォルトのブートローダーになります。menu.lst ファイルから Oracle Solaris ブートエントリが、表示されている順番で grub.cfg ファイルにコピーされます。すべてのチェーンローダーエントリも移行されます。


    image:アップグレードしたシステム上の GRUB 2 メインメニューの GRUB Legacy サブメニューエントリを示す図。
    image:新しい Oracle Solaris エントリを表示する GRUB 2 メインメニューの図。

x86: GRUB Legacy メニューエントリが GRUB 2 に移行される方法

GRUB 2 をサポートする Oracle Solaris のバージョンへのアップグレード後、すべての Oracle Solaris メニューエントリが GRUB Legacy menu.lst ファイルから新しい grub.cfg ファイルに自動的に移行されます。すべてのチェーンローダーエントリも移行されます。システムのリブート時に、移行されたブートエントリのみがメイン GRUB メニューに表示されます。メイン GRUB メニューに表示したいほかのブートエントリを手動で変換し、custom.cfg ファイルに追加する必要があります。「x86: GRUB 構成のカスタマイズ」を参照してください。


注 - menu.lst ファイルのすべてのブートエントリが、そのルートプールの GRUB Legacy サブメニューに存在します。


重要な点として、GRUB 2 では、Solaris 10 1/06 リリース以降、Oracle Solaris 10 リリースに加えて、Oracle Solaris 11 のサポートされるすべてのリリースを直接ブートできます。以前の Oracle Solaris リリースは チェーンロードメカニズムを使用して、間接的にブートできます。他のカスタムエントリを追加する同じ方法で、チェーンロードを使用するメニューエントリを custom.cfg ファイルに追加できます。

GRUB Legacy の場合と同様に、チェーンロードの原則はGRUB 2 でも同じですが、構文はやや異なります。次の例で、エントリはディスク 0 上のマスターブートレコード (MBR) にチェーンロードされます。このタイプのチェーンロードは、GRUB 2 がその場所にインストールされていない場合のみ役立ちます。このようなチェーンロードは BIOS ファームウェアを搭載するシステム (すべての Oracle Solaris 10 システムを含む) でのみ機能します。

menuentry "Boot from Hard Disk" {
               set root=(hd0)
               chainloader --force +1
       }

次の例では、2 番目の DOS パーティションに Oracle Solaris 10 がインストールされています。さらに、GRUB Legacy の Oracle Solaris 10 バージョンがそのパーティションのパーティションブートレコード (PBR) にインストールされます。

menuentry "Solaris 10" {
               set root=(hd0,msdos2)
               chainloader --force +1
       }

この例では、エントリが Oracle Solaris 10 GRUB Legacy メニューにチェーンロードされます。結果として 2 つのメニューのレベルが存在します: 1 つは GRUB 2 から Oracle Solaris 10 GRUB Legacy メニューにチェーンロードし、1 つは Oracle Solaris 10 GRUB Legacy メニューから Oracle Solaris 10 カーネルをブートします。システムをブートするには、該当する Oracle Solaris 10 メニューエントリを選択する必要があります。

menu.lst ファイルから変換された Oracle Solaris メニューエントリに加えて、ルートプールごとに、GRUB Legacy menu.lst ファイルを格納する 1 つのサブメニューがあります。このサブメニューには、各 menu.lst ファイル内のすべてのメニューエントリが含まれ、最大の下位互換性のため、すべての menu.lst エントリにアクセスできます。

GRUB 2 の前提条件のパッケージを含まない Oracle Solaris ブート環境でのブートに戻すと、beadm コマンドや bootadm コマンドによって実行された変更など、ブート構成の変更のみが該当するルートプールの menu.lst ファイルに対して行われます。次にシステムをリブートしても、GRUB 2 メニューにそれらの変更は反映されません。該当するルートプールの Legacy GRUB サブメニューのみに変更が反映されます。

さらに、GRUB 2 対応のブート環境がブートされ、grub.cfg ファイルが再生成されるまで、これらの変更は main GRUB メニューに表示されません。可能であれば常に、システムで GRUB 2 を使用するブート環境が実行されると、menu.lst ファイルが grub.cfg ファイルと同期されます。この同期は、beadm または bootadm コマンドを使用して、GRUB 2 構成が変更されると常に実行されます。

x86: GRUB 2 と GRUB Legacy のブート環境を同じシステムで保守する

GRUB Legacy ブート環境のあるシステムで、GRUB 2 ブート環境をアクティブ化できますが、GRUB Legacy ブート環境が GRUB 2 対応である場合のみに限ります。さらに、GRUB 2 ブート環境から GRUB Legacy ブート環境をアクティブ化できます。GRUB Legacy ブート環境のあるシステムで GRUB 2 ブート環境をアクティブ化する場合の注意の 1 つとして、pkg update コマンドを呼び出して GRUB 2 をサポートする Oracle Solaris リリースをインストールするに、現在のブート環境に GRUB 2 の前提条件のパッケージをインストールする必要があります「x86: GRUB Legacy システムを GRUB 2 をサポートするリリースにアップグレードする方法」を参照してください。

ブート環境は、beadm コマンドによって管理します。beadm(1M) を参照してください。beadm create コマンドを使用して、新しいブート環境を作成すると、そのブート環境のメニューエントリも自動的に作成されます。beadm list コマンドを使用して、システム上にあるすべてのブート環境を表示できます。

$ beadm list
BE                      Active Mountpoint Space Policy Created
--                      ------ ---------- ----- ------ -------
oracle-solaris11-backup -      -          64.0K static 2012-03-29 11:41
oracle-solaris2         -      -          64.0K static 2012-03-29 11:41
solaris11u1                NR     /          3.35G static 2012-02-17 13:22

beadm コマンドは GRUB 2 構成と GRUB Legacy 構成の両方で機能します。ブート環境のリストに GRUB 2 ブート環境が存在する場合、GRUB 2 がデフォルトのブートローダーとして維持されます。Oracle Solaris は、GRUB Legacy ブート環境がアクティブ化されても、GRUB Legacy をデフォルトのブートローダーとして再インストールしようとしません。最後の GRUB 2 ブート環境をシステムから削除した場合、GRUB Legacy をシステムブートローダーとして手動でインストールする必要があります。システムに GRUB 2 の前提条件のパッケージが含まれている場合、bootadm install-bootloader -f コマンドを使用して、ブートローダーを手動でインストールできます。「x86: bootadm install-bootloader コマンドを使用して GRUB 2 をインストールする」を参照してください。それ以外の場合は、installgrub コマンドを使用できます。installgrub(1M)を参照してください。

bootadm install-bootloader -f コマンドを使用して、GRUB Legacy をデフォルトのブートローダーとして手動で再インストールすると、GRUB Legacy がシステムブートローダーとして強制的にインストールされます。すべてのブート環境をブート可能のままにするため、このコマンドは、最新の GRUB Legacy ブートローダーバージョンを格納するブート環境から実行する必要があります。さらに、GRUB Legacy を再インストールする前に、beadm コマンドを使用して、すべての GRUB 2 ブート環境をシステムから削除してください。「x86: GRUB 2 がインストールされているシステムに GRUB Legacy をインストールする方法」を参照してください。


注 - 古いブートローダーのあるシステムで、-f オプションを付けて bootadm install-bootloader コマンドを使用する場合、古いブートローダーで、ブートディスク上の ZFS バージョンを読み取れる必要があります。そうでない場合、GRUB はブート時にルートプールを読み取ることができず、システムがブート不能になることがあります。

この状況が発生した場合、別のブート環境からブートするか、回復メディアからブートして、プールバージョンに一致するブートローダーバージョンをインストールすることによって、新しいブートローダーをインストールする必要があります。「x86: メディアからブートして、システムのブートを妨げている GRUB 構成の問題を解決する方法」を参照してください。