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

ZFS ルートプールからの新規ブート環境の作成

新規 ZFS ブート環境は、同一ルートプール内、新規ルートプール上のどちらにも作成できます。この節には次の概要が含まれます。

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

同一の ZFS ルートプール内で新規ブート環境を作成する場合は、lucreate コマンドでソースブート環境からスナップショットを作成し、そのスナップショットからクローンを作成します。スナップショットとクローンの作成はきわめて短時間で完了し、ディスク容量の消費も最小限ですみます。最終的にどれくらいの容量が必要かは、アップグレード処理の一環として置き換えられるファイルの数で決まります。スナップショットは読み取り専用ですが、クローンはスナップショットの読み書き可能なコピーです。クローンブート環境に加えられた変更は、スナップショットにも、スナップショットの作成元のソースブート環境にも反映されません。


注 –

有効なデータセット内のデータが変更されると、スナップショットは古いデータを参照し続けるための領域を使用します。その場合、スナップショットのため、古いデータの領域は解放されずプールに戻されません。スナップショットの詳細については、『Solaris ZFS 管理ガイド』の第 7 章「ZFS のスナップショットとクローンの操作」を参照してください。


現在のブート環境が同じ ZFS プールにある場合、-p オプションは省略します。

図 11–2 に、ZFS ルートプールからの ZFS ブート環境の作成の概要を示します。スライス c0t0d0s0 に、ZFS ルートプール rpool が含まれています。lucreate コマンドの -n オプションで、作成するブート環境に new-zfsBE という名前を割り当てます。元のルートプールのスナップショット rpool@new-zfsBE が作成されます。このスナップショットから、新規ブート環境 new-zfsBE となるクローンが作成されます。ブート環境 new-zfsBE は、すぐにアップグレードおよびアクティブ化できます。

図 11–2 同一のルートプール上への新規ブート環境の作成

この図については本文中で説明しています。


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

この例には、同一のルートプール内に新規ブート環境を作成する、図 11–2 と同じコマンドが示されています。lucreate コマンドでは、-c zfsBE オプションで現在稼動中のブート環境を指定し、-n new-zfsBE オプションで新しいブート環境を作成します。zfs list コマンドでは、新しいブート環境とスナップショットにある ZFS データセットが表示されます。


# lucreate -c zfsBE -n new-zfsBE
# zfs list
AME                        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       5.38G  57.6G   551M  /tmp/.alt.luupdall.110034
rpool/dump                 1.95G      -  1.95G  - 
rpool/swap                 1.95G      -  1.95G  - 

別のルートプール上への新規ブート環境の作成

lucreate コマンドを使用して、既存の ZFS ルートプールを別の ZFS ルートプール内にコピーできます。コピー処理には、システムによって時間がかかる場合があります。

図 11–3 に、ブート可能な ZFS ルートプールがまだ存在しないため、ZFS ルートプール rpool2c0t1d0s5 上に作成する zpool コマンドを示します。lucreate コマンドの -n オプションで、作成するブート環境に new-zfsBE という名前を割り当てます。-p オプションでは、新しいブート環境を配置する場所を指定します。

図 11–3 別のルートプール上への新規ブート環境の作成

この図については本文中で説明しています。


例 11–4 異なる ZFS ルートプール上へのブート環境の作成

この例では、新規ルートプールの作成後、新しく作成したルートプールに新規ブート環境を作成する、図 11–3 と同じコマンドを示しています。この例の zpool create コマンドで rpool2 が作成されます。zfs list コマンドで、rpool2 に ZFS データセットが作成されていないことが示されます。データセットは、lucreate コマンドで作成されます。


# zpool create rpool2 c0t2d0s5
# 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   - 

新しい ZFS ルートプール rpool2 が、ディスクスライス c0t2d0s5 上に作成されます。


# lucreate -n new-zfsBE -p rpool2
# 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   - 

新しいブート環境 new-zfsBE が、ROOTdump、および swap の他のデータセットと共に rpool2 に作成されます。ブート環境 new-zfsBE は、すぐにアップグレードおよびアクティブ化できます。