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

新しいルートプール内でのブート環境の作成

ここでは、既存の ZFS ルートプールがある場合に、新規のルートプール内に新規の ZFS ブート環境を作成する手順について説明します。非アクティブなブート環境の作成後、新しいブート環境を都合のよいときにアップグレードおよびアクティブ化できます。新しいブート環境を配置する場所を指定する -p オプションは必須です。既存の ZFS ルートプールは、ブート可能かつアップグレード可能にするため単一のスライス上に配置してください。

Procedureブート環境を新規 ZFS ルートプールに作成する方法

  1. 初めて Solaris Live Upgrade を実行するときには、次の手順を実行します。


    注 –

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


    1. 必要に応じて、システム上の既存の Solaris Live Upgrade パッケージを削除します。新しいリリースにアップグレードする場合は、そのリリースのパッケージをインストールしてください。

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


      注 –

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



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

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

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

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

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

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

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


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


        # patchadd patch_id
        

        patch_id はパッチの番号です。複数のパッチ名を指定する場合は、スペースで区切ります。


        注 –

        パッチは、info doc 206844 で指定されている順序で適用してください。


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

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


        # init 6
        
  2. ZFS ルートプールを作成します。

    ZFS ルートプールは、ブート可能かつアップグレード可能にするため単一のスライス上に作成します。


    # zpool create rpool2 c0t1d0s5
    
    rpool2

    新しい ZFS ルートプールの名前です。

    c0t1d0s5

    rpool2 を、ブート可能なスライス c0t1d0s5 に配置するように指定します。

    新規ルートプールの作成の詳細については、『Solaris ZFS 管理ガイド』を参照してください。

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


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

    現在の ZFS ブート環境に zfsBE という名前を割り当てます。

    -n new-zfsBE

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

    -p rpool2

    新しく作成した ZFS ルートのブート環境を rpool2 で定義した ZFS ルートプールに配置します。

    新しい ZFS ブート環境の作成には、しばらく時間がかかることがあります。ファイルシステムのデータが新しい ZFS ルートプールにコピーされます。非アクティブなブート環境が作成された場合は、luupgrade コマンドまたは luactivate コマンドを使用して、新しい ZFS ブート環境をアップグレードまたはアクティブ化することができます。

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

    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        -
  5. (省略可能) システム上の基本データセット情報を確認します。

    次の例では、システム上のすべてのデータセットの名前を表示しています。表示される新しいブート環境のマウントポイントは、luactivate コマンドが実行されるまでの一時的なものです。新しいブート環境は、ボリューム rpool2/dump および rpool2/swap を、rpool2 ZFS ブート環境と共有します。


    # zfs list
    NAME                             USED    AVAIL   REFER   MOUNTPOINT 
    rpool2                           9.29G    57.6G     20K   /rpool2 
    rpool2/ROOT/                     5.38G    57.6G     18K   /rpool2/ROOT 
    rpool2/ROOT/new-zfsBE            5.38G    57.6G    551M  /tmp/.new.luupdall.109859
    rpool2/dump                      3.99G        -   3.99G   - 
    rpool2/swap                      3.99G        -   3.99G   - 
    rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
    rpool/ROOT                       5.46G    57.6G     18K   legacy
    rpool/ROOT/zfsBE                 5.46G    57.6G    551M  
    rpool/dump                       3.99G        -   3.99G   - 
    rpool/swap                       3.99G        -   3.99G   - 

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


例 13–3 新しいルートプールでのブート環境の作成

この例では、新しい ZFS ルートプール rpool が、別のスライス c0t2s0s5 上に作成されます。lucreate コマンドで、新規 ZFS ブート環境 new-zfsBE を作成します。このブート環境は異なるルートプール内に作成されるため、-p オプションは必須です。


# zpool create rpool C0t1d0s5
# zfs list
NAME                             USED    AVAIL   REFER   MOUNTPOINT 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT					             5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G    551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   - 

# lucreate -c rpool -n new-zfsBE -p rpool2
Analyzing system configuration.
Current boot environment is named <rpool>.
Creating initial configuration for primary boot environment <rpool>.
The device </dev/dsk/c0t0d0> is not a root device for any 
boot environment; cannot get BE ID.
PBE configuration successful: PBE name <rpool> PBE Boot 
Device </dev/dsk/rpool>.
Comparing source boot environment <rpool> 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.
Updating system configuration files.
The device </dev/dsk/c1t0d0s0> is not a root device for any 
boot environment; cannot get BE ID.
Creating configuration for boot environment <new-zfsBE>.
Source boot environment is <rpool>.
Creating boot environment <new-zfsBE>.
Creating file systems on boot environment <new-zfsBE>.
Creating <zfs> file system for </> in zone <global> on 
<rpool2/ROOT/new-zfsBE>.
Populating file systems on boot environment <new-zfsBE>.
Checking selection integrity.
Integrity check OK.
Populating contents of mount point </>.
Copying.
Creating shared file system mount points.
Creating compare databases for boot environment <zfsBE>.
Creating compare database for file system </>.
Making boot environment <new-zfsBE> bootable.
Creating boot_archive for /.alt.tmp.b-cBc.mnt
updating /.alt.tmp.b-cBc.mnt/platform/sun4u/boot_archive
Population of boot environment <new-zfsBE> successful.
Creation of boot environment <new-zfsBE> successful.

# 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 
rpool2                           9.29G    57.6G     20K   /rpool2 
rpool2/ROOT/                     5.38G    57.6G     18K   /rpool2/ROOT 
rpool2/ROOT/new-zfsBE            5.38G    57.6G    551M   /tmp/.new.luupdall.109859
rpool2/dump                      3.99G        -   3.99G   - 
rpool2/swap                      3.99G        -   3.99G   - 
rpool                            9.29G    57.6G     20K   /.new.lulib.rs.109262
rpool/ROOT                       5.46G    57.6G     18K   legacy
rpool/ROOT/zfsBE                 5.46G    57.6G    551M  
rpool/dump                       3.99G        -   3.99G   - 
rpool/swap                       3.99G        -   3.99G   -