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

同一の ZFS ルートプール内でのブート環境の作成

ここでは、既存の ZFS ルートプールがある場合に、新規 ZFS ブート環境をそのプール内に作成する手順について説明します。非アクティブなブート環境の作成後、新しいブート環境を都合のよいときにアップグレードおよびアクティブにできます。同一プール内でブート環境を作成する場合、-p オプションは不要です。

ProcedureZFS ブート環境を同一の ZFS ルートプール内に作成する方法

  1. Solaris Live Upgrade をはじめて実行する前に、インストールメディアに含まれている最新の Solaris Live Upgrade パッケージと、SunSolve Infodoc 206844 に記載されているパッチをインストールしてください。SunSolve の Web サイトで、Infodoc 206844 (以前の 72099) を検索してください。

    最新のパッケージとパッチにより、リリースに最新のバグ修正と新機能がすべて含まれるようになります。新しいブート環境の作成に進む前に、システムに関連するすべてのパッチを必ずインストールしてください。

    以下では、SunSolve Infodoc 206844 の手順について説明します。


    注 –

    Solaris Live Upgrade を使って新規 ZFS ブート環境を作成するためには、少なくとも Solaris 10 10/08 リリースがインストールされている必要があります。それより前のリリースの ZFS および Solaris Live Upgrade ソフトウェアでは、この作業を実行することはできません。


    1. スーパーユーザーになるか、同等の役割を引き受けます。

    2. SunSolve の Web サイトにある Infodoc 206844 の手順に従って、Solaris Live Upgrade パッケージを削除および追加します。

      3 つの Solaris Live Upgrade パッケージ SUNWluuSUNWlur、および SUNWlucfg は、Solaris Live Upgrade を使ってアップグレードするのに必要なソフトウェアを構成します。これらのパッケージには、既存のソフトウェア、新しい機能、およびバグ修正が含まれています。Solaris Live Upgrade を使用する前に、既存パッケージを削除しないで新しいパッケージをシステムにインストールすると、ターゲットリリースへのアップグレードは失敗します。SUMWlucfg パッケージは、Solaris 10 8/07 以降のリリースの新機能です。Solaris 10 8/07 より前のリリースから Solaris Live Upgrade パッケージを使用する場合は、このパッケージを削除する必要はありません。


      注 –

      SUMWlucfg パッケージは、Solaris 10 8/07 以降のリリースの新機能です。それより前のリリースから Solaris Live Upgrade パッケージを使用する場合は、このパッケージを削除する必要はありません。



      # pkgrm SUNWlucfg SUNWluu SUNWlur
      
    3. 新しい Solaris Live Upgrade パッケージをインストールします。詳細については、「Solaris Live Upgrade のインストール」を参照してください。

    4. Solaris Live Upgrade を実行する前に、次のパッチをインストールする必要があります。これらのパッチにより、リリースに最新のバグ修正と新機能がすべて含まれるようになります。

      SunSolve で最新のパッチリストを確認してください。SunSolve の Web サイトで、Infodoc 206844 (以前の 72099) を検索してください。

      • パッチをローカルディスクに保存する場合は、/var/tmp/lupatches のようなディレクトリを作成し、パッチをそのディレクトリにダウンロードします。

      • SunSolve の Web サイトから、パッチリストを取得します。

      • この例のようにパッチディレクトリに移動します。


        # cd /var/tmp/lupatches
        
      • patchadd コマンドを使用してパッチをインストールします。


        # patchadd -M path-to-patches patch_id patch_id
        

        path-to-patches は、/var/tmp/lupatches などのパッチディレクトリへのパスです。patch_id はパッチの番号です。複数のパッチ名を指定する場合は、スペースで区切ります。


        注 –

        パッチは、Infodoc 206844 で指定された順序で適用する必要があります。


      • 必要に応じてシステムをリブートします。いくつかのパッチは、有効にするためにリブートする必要があります。

        x86 のみ: システムをリブートする必要があります。そうしないと、Solaris Live Upgrade は失敗します。


        # init 6
        

        以上で新しいブート環境を正しく作成するために必要なパッケージとパッチがインストールされました。

  2. 新しいブート環境を作成します。


    # lucreate [-c zfsBE] -n new-zfsBE
    
    -c zfsBE

    現在のブート環境に zfsBE という名前を割り当てます。このオプションは必須ではなく、また、最初のブート環境の作成時にのみ使用します。lucreate を初めて実行する場合に -c オプションを省略すると、デフォルトの名前が作成されます。

    -n new-zfsBE

    作成するブート環境に名前を割り当てます。名前は、システム上で一意となるように指定する必要があります。

    新しいブート環境の作成は、きわめて短時間で完了します。現在の ZFS ルートプール内の各データセットのスナップショットが作成され、各スナップショットからクローンが作成されます。スナップショットはディスク容量の効率が非常に高いので、この処理は最小限のディスク容量しか消費しません。非アクティブなブート環境が作成された場合は、luupgrade コマンドまたは luactivate コマンドを使用して、新しい ZFS ブート環境をアップグレードまたはアクティブにすることができます。

  3. (省略可能) ブート環境が完成したことを確認します。

    lustatus コマンドは、ブート環境の作成が完了してブート可能であるかどうかを報告します。


    # lustatus
    boot environment   Is        Active  Active     Can	    Copy 
    Name               Complete  Now	 OnReboot   Delete	 Status 
    ------------------------------------------------------------------------ 
    zfsBE               yes       yes     yes         no             -
    new-zfsBE           yes       no      no          yes            -
  4. (省略可能) システム上の基本データセット情報を確認します。

    この例では、ZFS ルートプールの名前は rpool で、@ 記号はスナップショットを示します。新しいブート環境のマウントポイントは、luactivate コマンドが実行されるまでの一時的なものです。/dump ボリュームと /swap ボリュームは、ZFS ルートプールおよびルートプール内のブート環境と共有されます。


    # zfs list
    NAME                                      USED  AVAIL  REFER  MOUNTPOINT 
    rpool                                    9.29G  57.6G    20K  /rpool 
    rpool/ROOT                               5.38G  57.6G    18K  /rpool/ROOT 
    rpool/ROOT/zfsBE                         5.38G  57.6G   551M  
    rpool/ROOT/zfsBE@new-zfsBE               66.5K      -   551M  -
    rpool/ROOT/new-zfsBE                     85.5K  57.6G   551M  /tmp/.alt.103197
    rpool/dump                               1.95G      -  1.95G  - 
    rpool/swap                               1.95G      -  1.95G  - 

    これで、新しいブート環境をアップグレードおよびアクティブにできます。例 13–2 を参照してください。


例 13–2 同一の ZFS ルートプール内でのブート環境の作成

新規 ZFS ブート環境 new-zfsBE を作成するためのコマンドは、次のとおりです。このブート環境は同一のルートプール内に作成されるため、-p オプションは不要です。


# lucreate [-c zfsBE] -n new-zfsBE
Analyzing system configuration.
Comparing source boot environment <zfsBE> file systems with the file
system(s) you specified for the new boot environment. Determining which
file systems should be in the new boot environment.
Updating boot environment description database on all BEs.
Creating configuration for boot environment new-zfsBE.
Source boot environment is zfsBE.
Creating boot environment new-zfsBE.
Cloning file systems from boot environment zfsBE to create 
boot environment new-zfsBE.
Creating snapshot for <rpool> on <rpool> Creating clone for <rpool>. 
Setting canmount=noauto for <rpool> in zone <global> on <rpool>. 
Population of boot environment zfsBE successful on <rpool>.
# lustatus
boot environment   Is        Active  Active     Can	    Copy 
Name               Complete  Now	   OnReboot   Delete	 Status 
------------------------------------------------------------------------ 
zfsBE               yes       yes     yes         no          - 
new-zfsBE           yes       no      no          yes         -
# zfs list
NAME                                      USED  AVAIL  REFER  MOUNTPOINT 
rpool                                    9.29G  57.6G    20K  /rpool 
rpool/ROOT                               5.38G  57.6G    18K  /rpool/ROOT 
rpool/ROOT/zfsBE                         5.38G  57.6G   551M  
rpool/ROOT/zfsBE@new-zfsBE               66.5K      -   551M  - 
rpool/ROOT/new-zfsBE                     85.5K  57.6G   551M  /tmp/.alt.103197 
rpool/dump                               1.95G      -  1.95G  - 
rpool/swap                               1.95G      -  1.95G  - 

これで、新しいブート環境をアップグレードおよびアクティブにできます。ZFS ブート環境のアップグレードの例については、例 13–1 を参照してください。luupgrade コマンドのその他の使用例については、第 5 章Solaris Live Upgrade によるアップグレード (作業)を参照してください。


# luactivate new-zfsBE
**********************************************************************

The target boot environment has been activated. It will be used when you 
reboot. NOTE: You MUST NOT USE the reboot, halt, or uadmin commands. You 
MUST USE either the init or the shutdown command when you reboot. If you 
do not use either init or shutdown, the system will not boot using the 
target BE.

**********************************************************************
In case of a failure while booting to the target BE, the following process 
needs to be followed to fallback to the currently working boot environment:

1. Enter the PROM monitor (ok prompt).

2. Change the boot device back to the original boot environment by typing:

     setenv boot-device /pci@1f,0/pci@1/scsi@4,1/disk@2,0:a

3. Boot to the original boot environment by typing:

     boot

**********************************************************************

Modifying boot archive service
Activation of boot environment <new-zfsBE> successful.

システムを ZFS ブート環境にリブートします。


# init 6
# svc.startd: The system is coming down.  Please wait.
svc.startd: 79 system services are now being stopped.
.
.
.