Oracle Solaris Live Upgrade の UFS コンポーネント関連機能は引き続き使用可能で、以前の Solaris リリースと同様に動作します。
次の機能も使用可能です。
UFS ルートファイルシステムを ZFS ルートファイルシステムに移行する場合は、既存の ZFS ストレージプールを -p オプションで指定する必要があります。
UFS ルートファイルシステムのコンポーネントがさまざまなスライス上に存在する場合、それらは ZFS ルートプールに移行されます。
Solaris 10 10/08 リリースでは、ゾーンが含まれているシステムを移行することはできますが、サポートされる構成は限られています。Solaris 10 5/09 以降のリリースでは、より多くのゾーン構成がサポートされています。詳細は、次の各節を参照してください。
「ゾーンが含まれているシステムを Oracle Solaris Live Upgrade で移行またはアップグレードする (Solaris 10 10/08)」
「ゾーンが含まれているシステムを Oracle Solaris Live Upgrade で移行またはアップグレードする (Solaris 10 5/09 以降)」
ゾーンが含まれていないファイルシステムを移行する場合は、「Oracle Solaris Live Upgrade を使用して ZFS ルートファイルシステムに移行する (ゾーンなし)」を参照してください。
同じプール内で新しい ZFS BE を作成する場合は、Oracle Solaris Live Upgrade で ZFS のスナップショットとクローンの機能を使用できます。したがって、以前の Solaris リリースと比べてはるかに高速に BE を作成できます。
Oracle Solaris インストールおよび Oracle Solaris Live Upgrade の機能の詳細については、『Oracle Solaris 10 9/10 インストールガイド (Solaris Live Upgrade とアップグレードの計画)』を参照してください。
UFS ルートファイルシステムを ZFS ルートファイルシステムに移行するための基本的な手順は次のとおりです。
サポートされている任意の SPARC システムまたは x86 システムで、Solaris 10 10/08、Solaris 10 5/09、Solaris 10 10/09、または Oracle Solaris 10 9/10 リリースをインストールするか、標準のアップグレードプログラムを使用して以前の Solaris 10 リリースからアップグレードします。
Solaris 10 10/08 以降のリリースを実行している場合は、ZFS ルートファイルシステム用の ZFS ストレージプールを作成します。
Oracle Solaris Live Upgrade を使用して、UFS ルートファイルシステムを ZFS ルートファイルシステムに移行します。
ZFS BE を luactivate コマンドでアクティブにします。
ZFS および Oracle Solaris Live Upgrade の要件については、「ZFS をサポートするための Oracle Solaris インストールと Oracle Solaris Live Upgrade の要件」を参照してください。
Oracle Solaris Live Upgrade を使用して UFS ルートファイルシステムを ZFS ルートファイルシステムに移行する前に、次に示す問題を確認してください。
UFS から ZFS ルートファイルシステムへの移行には、Oracle Solaris インストール GUI の標準アップグレードオプションは使用できません。UFS ファイルシステムから移行するには、Oracle Solaris Live Upgrade を使用する必要があります。
Oracle Solaris Live Upgrade 操作の前に、起動に使用する ZFS ストレージプールを作成する必要があります。また、現時点での起動に関する制限のため、ZFS ルートプールの作成には、ディスク全体ではなくスライスを使用する必要があります。次に例を示します。
# zpool create rpool mirror c1t0d0s0 c1t1d0s0 |
新しいプールを作成する前に、プールで使用するディスクに、EFI ラベルではなく SMI (VTOC) ラベルが付いていることを確認してください。ディスクに SMI ラベルを付け直した場合は、ラベル付け処理によってパーティション分割方式が変更されていないことを確認してください。ほとんどの場合、ルートプールに使用するスライスにディスク容量のすべてを割り当てるようにしてください。
Oracle Solaris Live Upgrade を使用して、UFS BE を ZFS BE から作成することはできません。UFS BE を ZFS BE に移行し、UFS BE を維持する場合は、UFS BE または ZFS BE から起動できます。
Oracle Solaris Live Upgrade 機能は名前の変更を検出できないため、zfs rename コマンドで ZFS BE の名前を変更しないでください。名前を変更すると、以降に実行する ludelete などのコマンドが失敗します。したがって、既存の BE を引き続き使用する場合は、ZFS プールまたはファイルシステムの名前を変更しないでください。
主 BE のクローンである代替 BE を作成するときに、-f、-x、-y、-Y、および -z オプションを使用して主 BE のファイルを含めたり除外したりすることはできません。ただし、次の場合には、ファイルを含めるオプションと除外するオプションを使用できます。
UFS -> UFS UFS -> ZFS ZFS -> ZFS (different pool) |
Oracle Solaris Live Upgrade を使用すると、UFS ルートファイルシステムを ZFS ルートファイルシステムにアップグレードできますが、ルート以外のファイルシステムまたは共有ファイルシステムはアップグレードできません。
lu コマンドを使用して ZFS ルートファイルシステムの作成や移行を行うことはできません。
次の例では、UFS ルートファイルシステムを ZFS ルートファイルシステムに移行する方法を示します。
ゾーンが含まれているシステムを移行またはアップグレードする場合は、次の各節を参照してください。
「ゾーンが含まれているシステムを Oracle Solaris Live Upgrade で移行またはアップグレードする (Solaris 10 10/08)」
「ゾーンが含まれているシステムを Oracle Solaris Live Upgrade で移行またはアップグレードする (Solaris 10 5/09 以降)」
次の例では、ZFS ルートファイルシステムの BE を UFS ルートファイルシステムから作成する方法を示します。現在の BE ufsBE は -c オプションで指定されています。この BE には UFS ルートファイルシステムが含まれています。-c オプション (省略可能) を指定しない場合、デフォルトではデバイス名が現在の BE の名前になります。新しい BE である zfsBE は、-n オプションによって識別されます。 lucreate 操作の前に ZFS ストレージプールが存在している必要があります。
ZFS ストレージプールは、アップグレード可能かつブート可能にするため、ディスク全体ではなくスライスを使って作成します。新しいプールを作成する前に、プールで使用するディスクに、EFI ラベルではなく SMI (VTOC) ラベルが付いていることを確認してください。ディスクに SMI ラベルを付け直した場合は、ラベル付け処理によってパーティション分割方式が変更されていないことを確認してください。ほとんどの場合、ルートプールに使用するスライスにディスク容量のすべてを割り当てるようにしてください。
# zpool create rpool mirror c1t2d0s0 c2t1d0s0 # lucreate -c ufsBE -n zfsBE -p rpool Analyzing system configuration. No name for current boot environment. Current boot environment is named <ufsBE>. Creating initial configuration for primary boot environment <ufsBE>. The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID. PBE configuration successful: PBE name <ufsBE> PBE Boot Device </dev/dsk/c1t0d0s0>. Comparing source boot environment <ufsBE> 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/c1t2d0s0> is not a root device for any boot environment; cannot get BE ID. Creating configuration for boot environment <zfsBE>. Source boot environment is <ufsBE>. Creating boot environment <zfsBE>. Creating file systems on boot environment <zfsBE>. Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsBE>. Populating file systems on boot environment <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 </rpool/ROOT>. Creating compare database for file system </>. Updating compare databases on boot environment <zfsBE>. Making boot environment <zfsBE> bootable. Creating boot_archive for /.alt.tmp.b-qD.mnt updating /.alt.tmp.b-qD.mnt/platform/sun4u/boot_archive Population of boot environment <zfsBE> successful. Creation of boot environment <zfsBE> successful. |
lucreate 操作が完了したら、lustatus コマンドを使用して BE の状態を表示します。次に例を示します。
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- ufsBE yes yes yes no - zfsBE yes no no yes - |
その後、ZFS コンポーネントのリストを確認します。次に例を示します。
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 7.17G 59.8G 95.5K /rpool rpool/ROOT 4.66G 59.8G 21K /rpool/ROOT rpool/ROOT/zfsBE 4.66G 59.8G 4.66G / rpool/dump 2G 61.8G 16K - rpool/swap 517M 60.3G 16K - |
次に、luactivate コマンドを使用して、新しい ZFS BE をアクティブにします。次に例を示します。
# luactivate zfsBE A Live Upgrade Sync operation will be performed on startup of boot environment <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. ********************************************************************** . . . Modifying boot archive service Activation of boot environment <zfsBE> successful. |
次に、システムを再起動して ZFS BE に切り替えます。
# init 6 |
ZFS BE がアクティブになっていることを確認します。
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- ufsBE yes no no yes - zfsBE yes yes yes no - |
UFS BE に切り替えなおす場合は、ZFS BE が起動されていた間に作成された ZFS ストレージプールをすべて再インポートする必要があります。これらは UFS BE で自動的には使用可能になりません。
UFS BE が必要でなくなった場合は、ludelete コマンドで削除できます。
同じプール内で ZFS BE から ZFS BE を作成する操作には ZFS のスナップショットとクローンの機能が使用されるため、この操作は非常に高速です。現在の BE が同じ ZFS プールにある場合、-p オプションは省略されます。
ZFS BE が複数存在する場合は、次のようにして起動元の BE を選択します。
SPARC: boot -L コマンドを使って使用可能な BE を確認し、boot -Z コマンドを使って起動元の BE を選択することができます。
x86: GRUB メニューから BE を選択できます。
詳細は、例 5–9 を参照してください。
# lucreate -n zfs2BE Analyzing system configuration. No name for current boot environment. INFORMATION: The current boot environment is not named - assigning name <zfsBE>. Current boot environment is named <zfsBE>. Creating initial configuration for primary boot environment <zfsBE>. The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID. PBE configuration successful: PBE name <zfsBE> PBE Boot Device </dev/dsk/c1t0d0s0>. 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. Updating system configuration files. Creating configuration for boot environment <zfs2BE>. Source boot environment is <zfsBE>. Creating boot environment <zfs2BE>. Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>. Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>. Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>. Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>. Population of boot environment <zfs2BE> successful. Creation of boot environment <zfs2BE> successful. |
ZFS BE を追加のパッケージやパッチでアップグレードすることができます。
基本的な手順は次のとおりです。
代替 BE を lucreate コマンドで作成します。
代替 BE をアクティブにし、そこから起動します。
主 ZFS BE を luupgrade コマンドでアップグレードして、パッケージやパッチを追加します。
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- zfsBE yes no no yes - zfs2BE yes yes yes no - # luupgrade -p -n zfsBE -s /net/system/export/s10up/Solaris_10/Product SUNWchxge Validating the contents of the media </net/install/export/s10up/Solaris_10/Product>. Mounting the BE <zfsBE>. Adding packages to the BE <zfsBE>. Processing package instance <SUNWchxge> from </net/install/export/s10up/Solaris_10/Product> Chelsio N110 10GE NIC Driver(sparc) 11.10.0,REV=2006.02.15.20.41 Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved. This appears to be an attempt to install the same architecture and version of a package which is already installed. This installation will attempt to overwrite this package. Using </a> as the package base directory. ## Processing package information. ## Processing system information. 4 package pathnames are already properly installed. ## Verifying package dependencies. ## Verifying disk space requirements. ## Checking for conflicts with packages already installed. ## Checking for setuid/setgid programs. This package contains scripts which will be executed with super-user permission during the process of installing this package. Do you want to continue with the installation of <SUNWchxge> [y,n,?] y Installing Chelsio N110 10GE NIC Driver as <SUNWchxge> ## Installing part 1 of 1. ## Executing postinstall script. Installation of <SUNWchxge> was successful. Unmounting the BE <zfsBE>. The package add to the BE <zfsBE> completed. |
Solaris 10 10/08 リリースでは、ゾーンが含まれているシステムを Oracle Solaris Live Upgrade で移行することはできますが、サポートされる構成は限られています。Solaris 10 5/09 以降のリリースをインストールする場合や Solaris 10 5/09 以降のリリースにアップグレードする場合は、より多くのゾーン構成がサポートされます。詳細は、「ゾーンが含まれているシステムを Oracle Solaris Live Upgrade で移行またはアップグレードする (Solaris 10 5/09 以降)」を参照してください。
この節では、Oracle Solaris Live Upgrade によるアップグレードやパッチの適用が可能になるように、ゾーンが含まれているシステムを構成してインストールする方法について説明します。ゾーンが含まれていない ZFS ルートファイルシステムに移行する場合は、「Oracle Solaris Live Upgrade を使用して ZFS ルートファイルシステムに移行する (ゾーンなし)」を参照してください。
Solaris 10 10/08 リリースで、ゾーンが含まれているシステムを移行する場合や、ゾーンが含まれているシステムを構成する場合は、次の手順を確認してください。
「UFS 上にゾーンルートを持つ UFS ルートファイルシステムを ZFS ルートファイルシステムに移行する方法 (Solaris 10 10/08)」
「ZFS 上にゾーンルートを持つ ZFS ルートファイルシステムにアップグレードまたはパッチを適用する方法 (Solaris 10 10/08)」
ZFS ルートファイルシステムが含まれているシステムでこれらの推奨手順に従ってゾーンを設定して、そのシステムで Oracle Solaris Live Upgrade を使用できるようにします。
次の手順では、ゾーンがインストールされている UFS ルートファイルシステムを、アップグレードやパッチの適用が可能な ZFS ルートファイルシステムおよび ZFS ゾーンルート構成に移行する方法を説明します。
次の手順では、プール名の例として rpool、アクティブなブート環境の名前の例として s10BE* を使用しています。
システムで以前の Solaris 10 リリースが稼働している場合は、Solaris 10 10/08 リリースにアップグレードします。
Solaris 10 リリースが稼働しているシステムのアップグレードの詳細については、『Oracle Solaris 10 9/10 インストールガイド (Solaris Live Upgrade とアップグレードの計画)』を参照してください。
ルートプールを作成します。
# zpool create rpool mirror c0t1d0 c1t1d0 |
ルートプールの要件については、「ZFS をサポートするための Oracle Solaris インストールと Oracle Solaris Live Upgrade の要件」を参照してください。
UFS 環境のゾーンが起動されることを確認します。
新しい ZFS ブート環境を作成します。
# lucreate -n s10BE2 -p rpool |
このコマンドは、新しいブート環境のデータセットをルートプールに確立し、現在のブート環境をゾーンも含めてそれらのデータセットにコピーします。
新しい ZFS ブート環境をアクティブにします。
# luactivate s10BE2 |
これで、システムでは ZFS ルートファイルシステムが稼働していますが、UFS 上のゾーンルートはまだ UFS ルートファイルシステムにあります。UFS ゾーンをサポートされる ZFS 構成に完全に移行するには、次の手順が必要です。
システムを再起動します。
# init 6 |
ゾーンを ZFS BE に移行します。
発生する可能性のあるマウントポイントの問題をすべて解決します。
Oracle Solaris Live Upgrade のバグのため、アクティブでないブート環境は起動に失敗する場合があります。これは、ブート環境の ZFS データセットまたはゾーンの ZFS データセットに無効なマウントポイントが含まれているためです。
zfs list の出力を確認します。
正しくない一時的なマウントポイントを探します。次に例を示します。
# zfs list -r -o name,mountpoint rpool/ROOT/s10u6 NAME MOUNTPOINT rpool/ROOT/s10u6 /.alt.tmp.b-VP.mnt/ rpool/ROOT/s10u6/zones /.alt.tmp.b-VP.mnt//zones rpool/ROOT/s10u6/zones/zonerootA /.alt.tmp.b-VP.mnt/zones/zonerootA |
ルート ZFS BE (rpool/ROOT/s10u6) のマウントポイントは / となるべきです。
ZFS BE とそのデータセットのマウントポイントを設定しなおします。
次に例を示します。
# zfs inherit -r mountpoint rpool/ROOT/s10u6 # zfs set mountpoint=/ rpool/ROOT/s10u6 |
システムを再起動します。
GRUB メニューまたは OpenBoot PROM プロンプトで、特定のブート環境を起動するオプションが表示されたら、前の手順でマウントポイントを修正したブート環境を選択します。
次の手順では、アップグレードやパッチの適用が可能な ZFS ルートファイルシステムおよび ZFS ゾーンルート構成を設定する方法を説明します。この構成では、ZFS ゾーンルートは ZFS データセットとして作成されます。
次の手順では、プール名の例として rpool、アクティブなブート環境の名前の例として s10BE を使用しています。ゾーンのデータセットの名前には、正当なデータセット名であればどのようなものでも使用できます。次の例では、ゾーンのデータセットの名前は zones になっています。
Solaris 対話式テキストインストーラまたは Solaris JumpStart インストール方法を使用して、システムを ZFS ルートでインストールします。
初期インストールまたは Solaris JumpStart インストールを使用して ZFS ルートファイルシステムをインストールする方法については、「ZFS ルートファイルシステムのインストール (初期インストール)」または 「ZFS ルートファイルシステムのインストール (Oracle Solaris JumpStart インストール)」を参照してください。
新しく作成したルートプールからシステムを起動します。
ゾーンルートをまとめるためのデータセットを作成します。
次に例を示します。
# zfs create -o canmount=noauto rpool/ROOT/s10BE/zones |
canmount プロパティーに noauto 値を設定すると、Oracle Solaris Live Upgrade とシステムの起動コードの明示的なアクションによらないかぎり、データセットはマウントされなくなります。
新しく作成したゾーンデータセットをマウントします。
# zfs mount rpool/ROOT/s10BE/zones |
データセットは /zones にマウントされます。
各ゾーンルートのデータセットを作成し、マウントします。
# zfs create -o canmount=noauto rpool/ROOT/s10BE/zones/zonerootA # zfs mount rpool/ROOT/s10BE/zones/zonerootA |
ゾーンルートディレクトリに適切なアクセス権を設定します。
# chmod 700 /zones/zonerootA |
ゾーンを設定して、ゾーンパスを次のように設定します。
# zonecfg -z zoneA zoneA: No such zone configured Use 'create' to begin configuring a new zone. zonecfg:zoneA> create zonecfg:zoneA> set zonepath=/zones/zonerootA |
次の構文を使用して、システムの起動時にゾーンが自動的に起動するように設定できます。
zonecfg:zoneA> set autoboot=true |
ゾーンをインストールします。
# zoneadm -z zoneA install |
ゾーンを起動します。
# zoneadm -z zoneA boot |
ZFS 上にゾーンルートを持つ ZFS ルートファイルシステムにアップグレードやパッチを適用する必要がある場合は、次の手順を使用します。このような更新には、システムのアップグレードの場合と、パッチの適用の場合があります。
次の手順では、アップグレードまたはパッチを適用するブート環境の名前の例として newBE を使用しています。
アップグレードまたはパッチを適用するブート環境を作成します。
# lucreate -n newBE |
すべてのゾーンを含め、既存のブート環境が複製されます。元のブート環境の各データセットに対してデータセットが 1 つずつ作成されます。新しいデータセットは、現在のルートプールと同じプールに作成されます。
次のいずれかを選択して、システムをアップグレードするか新しいブート環境にパッチを適用します。
システムをアップグレードします。
# luupgrade -u -n newBE -s /net/install/export/s10u7/latest |
ここで、-s オプションは Solaris インストールメディアの場所を指定します。
新しいブート環境にパッチを適用します。
# luupgrade -t -n newBE -t -s /patchdir 139147-02 157347-14 |
新しいブート環境をアクティブにします。
# luactivate newBE |
新たにアクティブにしたブート環境から起動します。
# init 6 |
発生する可能性のあるマウントポイントの問題をすべて解決します。
Oracle Solaris Live Upgrade 機能のバグのため、アクティブでないブート環境は起動に失敗する場合があります。これは、ブート環境の ZFS データセットまたはゾーンの ZFS データセットに無効なマウントポイントが含まれているためです。
zfs list の出力を確認します。
正しくない一時的なマウントポイントを探します。次に例を示します。
# zfs list -r -o name,mountpoint rpool/ROOT/newBE NAME MOUNTPOINT rpool/ROOT/newBE /.alt.tmp.b-VP.mnt/ rpool/ROOT/newBE/zones /.alt.tmp.b-VP.mnt/zones rpool/ROOT/newBE/zones/zonerootA /.alt.tmp.b-VP.mnt/zones/zonerootA |
ルート ZFS BE (rpool/ROOT/newBE) のマウントポイントは / となるべきです。
ZFS BE とそのデータセットのマウントポイントを設定しなおします。
次に例を示します。
# zfs inherit -r mountpoint rpool/ROOT/newBE # zfs set mountpoint=/ rpool/ROOT/newBE |
システムを再起動します。
GRUB メニューまたは OpenBoot PROM プロンプトで、特定のブート環境を起動するオプションが表示されたら、前の手順でマウントポイントを修正したブート環境を選択します。
Solaris 10 10/08 以降のリリースでは、Oracle Solaris Live Upgrade 機能を使用して、ゾーンが含まれているシステムを移行またはアップグレードすることができます。Solaris 10 5/09 以降のリリースでは、疎ルートゾーン構成と完全ルートゾーン構成も Live Upgrade でサポートされます。
この節では、Solaris 10 5/09 以降のリリースで Oracle Solaris Live Upgrade によるアップグレードやパッチの適用が可能になるようにゾーンが含まれているシステムを構成する方法について説明します。ゾーンが含まれていない ZFS ルートファイルシステムに移行する場合は、「Oracle Solaris Live Upgrade を使用して ZFS ルートファイルシステムに移行する (ゾーンなし)」を参照してください。
Solaris 10 5/09 以降のリリースで ZFS とゾーンに Oracle Solaris Live Upgrade を使用する場合は、次の点を考慮してください。
Solaris 10 5/09 以降のリリースでサポートされるゾーン構成で Oracle Solaris Live Upgrade を使用するには、まず標準のアップグレードプログラムを使って Solaris 10 5/09 以降のリリースにシステムをアップグレードする必要があります。
その後、Oracle Solaris Live Upgrade を使用して、ゾーンルートを持つ UFS ルートファイルシステムを ZFS ルートファイルシステムに移行するか、ZFS ルートファイルシステムとゾーンルートにアップグレードやパッチを適用することができます。
サポートされていないゾーン構成を、以前の Solaris 10 リリースから直接 Solaris 10 5/09 以降のリリースに移行することはできません。
Solaris 10 5/09 以降のリリースでゾーンを含むシステムを移行または構成する場合は、次の情報を確認してください。
「ZFS ルートファイルシステムとゾーンルートを持つ ZFS BE を作成する方法 (Solaris 10 5/09 以降)」
「ゾーンルートを持つ ZFS ルートファイルシステムにアップグレードまたはパッチを適用する方法 (Solaris 10 5/09 以降)」
「ゾーンルートを持つ UFS ルートファイルシステムを ZFS ルートファイルシステムに移行する方法 (Solaris 10 5/09 以降)」
ゾーンが含まれているシステムを Oracle Solaris Live Upgrade を使用して移行またはアップグレードする前に、サポートされているゾーン構成を確認してください。
UFS ルートファイルシステムを ZFS ルートファイルシステムに移行する – 次のゾーンルート構成がサポートされています。
UFS ルートファイルシステムのディレクトリ内
UFS ルートファイルシステムのマウントポイントのサブディレクトリ内
UFS ルートファイルシステムのディレクトリ内または UFS ルートファイルシステムのマウントポイントのサブディレクトリ内にゾーンルートを含む UFS ルートファイルシステム、およびゾーンルートを含む ZFS 非ルートプール
次の UFS/ゾーン構成はサポートされません: ゾーンルートをマウントポイントとして持つ UFS ルートファイルシステム。
ZFS ルートファイルシステムを移行またはアップグレードする – 次のゾーンルート構成がサポートされています。
ZFS ルートプールのデータセット内。場合により、Oracle Solaris Live Upgrade 操作の前にゾーンルートのデータセットが用意されていないときは、ゾーンルートのデータセット (zoneds) が Oracle Solaris Live Upgrade によって作成されます。
ZFS ルートファイルシステムのサブディレクトリ内
ZFS ルートファイルシステムの外部にあるデータセット内
ZFS ルートファイルシステムの外部にあるデータセットのサブディレクトリ内
非ルートプールのデータセット内。次の例では、zonepool/zones はゾーンルートを含むデータセットであり、rpool は ZFS BE を含んでいます。
zonepool zonepool/zones zonepool/zones/myzone rpool rpool/ROOT rpool/ROOT/myBE |
次の構文を使用すると、Oracle Solaris Live Upgrade によって zonepool のゾーンおよび rpool BE のスナップショットが作成され、複製が行われます。
# lucreate -n newBE |
newBE BE が rpool/ROOT/newBE 内に作成されます。newBE をアクティブにすると、 zonepool のコンポーネントにアクセスできるようになります。
前述の例では、/zonepool/zones がサブディレクトリーであり、別個のデータセットではない場合には、それは、ルートプール rpool のコンポーネントとして、Live Upgrade によって移行されます。
UFS および ZFS のゾーンの移行またはアップグレードに関する情報 – UFS 環境または ZFS 環境の移行またはアップグレードに影響を与える可能性のある次の考慮事項を確認してください。
「ゾーンが含まれているシステムを Oracle Solaris Live Upgrade で移行またはアップグレードする (Solaris 10 10/08)」の説明に従って Solaris 10 10/08 リリースでゾーンを構成し、Solaris 10 5/09 以降のリリースにアップグレードした場合は、ZFS ルートファイルシステムへの移行や、Solaris Live Upgrade による Solaris 10 5/09 以降のリリースへのアップグレードが可能なはずです。
zones/zone1 や zones/zone1/zone2 のような入れ子のディレクトリ内にゾーンルートを作成しないでください。そうしないと、起動時にマウントが失敗する可能性があります。
Solaris 10 5/09 以降のリリースの初期インストールを実行したあとで、この手順を使用して ZFS ルートファイルシステムを作成します。また、luupgrade 機能を使って Solaris 10 5/09 以降のリリースに ZFS ルートファイルシステムをアップグレードしたあとも、この手順を使用します。この手順を使用して作成した ZFS BE には、あとでアップグレードやパッチを適用できます。
次の手順で例として使用する Oracle Solaris 10 9/10 システムは、ZFS ルートファイルシステムと、/rpool/zones にゾーンルートのデータセットを持っています。zfs2BE という名前の ZFS BE が作成されますが、あとでそのアップグレードやパッチの適用を行うことができます。
既存の ZFS ファイルシステムを確認します。
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 7.26G 59.7G 98K /rpool rpool/ROOT 4.64G 59.7G 21K legacy rpool/ROOT/zfsBE 4.64G 59.7G 4.64G / rpool/dump 1.00G 59.7G 1.00G - rpool/export 44K 59.7G 23K /export rpool/export/home 21K 59.7G 21K /export/home rpool/swap 1G 60.7G 16K - rpool/zones 633M 59.7G 633M /rpool/zones |
ゾーンがインストールされ起動されていることを確認します。
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 zfszone running /rpool/zones native shared |
ZFS BE を作成します。
# lucreate -n zfs2BE Analyzing system configuration. No name for current boot environment. INFORMATION: The current boot environment is not named - assigning name <zfsBE>. Current boot environment is named <zfsBE>. Creating initial configuration for primary boot environment <zfsBE>. The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID. PBE configuration successful: PBE name <zfsBE> PBE Boot Device </dev/dsk/c1t0d0s0>. 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. Updating system configuration files. Creating configuration for boot environment <zfs2BE>. Source boot environment is <zfsBE>. Creating boot environment <zfs2BE>. Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>. Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>. Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>. Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>. Population of boot environment <zfs2BE> successful. Creation of boot environment <zfs2BE> successful. |
ZFS BE をアクティブにします。
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- zfsBE yes yes yes no - zfs2BE yes no no yes - # luactivate zfs2BE A Live Upgrade Sync operation will be performed on startup of boot environment <zfs2BE>. . . . # init 6 |
新しい BE に ZFS ファイルシステムとゾーンが作成されていることを確認します。
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 7.38G 59.6G 98K /rpool rpool/ROOT 4.72G 59.6G 21K legacy rpool/ROOT/zfs2BE 4.72G 59.6G 4.64G / rpool/ROOT/zfs2BE@zfs2BE 74.0M - 4.64G - rpool/ROOT/zfsBE 5.45M 59.6G 4.64G /.alt.zfsBE rpool/dump 1.00G 59.6G 1.00G - rpool/export 44K 59.6G 23K /export rpool/export/home 21K 59.6G 21K /export/home rpool/swap 1G 60.6G 16K - rpool/zones 17.2M 59.6G 633M /rpool/zones rpool/zones-zfsBE 653M 59.6G 633M /rpool/zones-zfsBE rpool/zones-zfsBE@zfs2BE 19.9M - 633M - # zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared - zfszone installed /rpool/zones native shared |
Solaris 10 5/09 以降のリリースで、ゾーンルートを持つ ZFS ルートファイルシステムにアップグレードやパッチを適用する必要がある場合は、次の手順を使用します。このような更新には、システムのアップグレードの場合と、パッチの適用の場合があります。
次の手順では、アップグレードまたはパッチを適用するブート環境の名前の例として zfs2BE を使用しています。
既存の ZFS ファイルシステムを確認します。
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 7.38G 59.6G 100K /rpool rpool/ROOT 4.72G 59.6G 21K legacy rpool/ROOT/zfs2BE 4.72G 59.6G 4.64G / rpool/ROOT/zfs2BE@zfs2BE 75.0M - 4.64G - rpool/ROOT/zfsBE 5.46M 59.6G 4.64G / rpool/dump 1.00G 59.6G 1.00G - rpool/export 44K 59.6G 23K /export rpool/export/home 21K 59.6G 21K /export/home rpool/swap 1G 60.6G 16K - rpool/zones 22.9M 59.6G 637M /rpool/zones rpool/zones-zfsBE 653M 59.6G 633M /rpool/zones-zfsBE rpool/zones-zfsBE@zfs2BE 20.0M - 633M - |
ゾーンがインストールされ起動されていることを確認します。
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 5 zfszone running /rpool/zones native shared |
アップグレードまたはパッチを適用する ZFS BE を作成します。
# lucreate -n zfs2BE 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. Updating system configuration files. Creating configuration for boot environment <zfs2BE>. Source boot environment is <zfsBE>. Creating boot environment <zfs2BE>. Cloning file systems from boot environment <zfsBE> to create boot environment <zfs2BE>. Creating snapshot for <rpool/ROOT/zfsBE> on <rpool/ROOT/zfsBE@zfs2BE>. Creating clone for <rpool/ROOT/zfsBE@zfs2BE> on <rpool/ROOT/zfs2BE>. Setting canmount=noauto for </> in zone <global> on <rpool/ROOT/zfs2BE>. Creating snapshot for <rpool/zones> on <rpool/zones@zfs10092BE>. Creating clone for <rpool/zones@zfs2BE> on <rpool/zones-zfs2BE>. Population of boot environment <zfs2BE> successful. Creation of boot environment <zfs2BE> successful. |
次のいずれかを選択して、システムをアップグレードするか新しいブート環境にパッチを適用します。
システムをアップグレードします。
# luupgrade -u -n zfs2BE -s /net/install/export/s10up/latest |
ここで、-s オプションは Solaris インストールメディアの場所を指定します。
この処理には非常に長い時間がかかることがあります。
luupgrade 処理の詳細な例については、例 5–6 を参照してください。
新しいブート環境にパッチを適用します。
# luupgrade -t -n zfs2BE -t -s /patchdir patch-id-02 patch-id-04 |
新しいブート環境をアクティブにします。
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- zfsBE yes yes yes no - zfs2BE yes no no yes - # luactivate zfs2BE A Live Upgrade Sync operation will be performed on startup of boot environment <zfs2BE>. . . . |
新たにアクティブにしたブート環境から起動します。
# init 6 |
この例では、Solaris 10 10/09 システムに作成された、非ルートプール内に ZFS ルートファイルシステムとゾーンルートを持つ ZFS BE (zfsBE) を、Oracle Solaris 10 9/10 リリースにアップグレードします。この処理には長い時間がかかることがあります。その後、アップグレードした BE (zfs2BE) をアクティブにします。アップグレードを行う前に、ゾーンがインストールされ起動されていることを確認してください。
この例では、zonepool プール、/zonepool/zones データセット、および zfszone ゾーンが、次のようにして作成されます。
# zpool create zonepool mirror c2t1d0 c2t5d0 # zfs create zonepool/zones # chmod 700 zonepool/zones # zonecfg -z zfszone zfszone: No such zone configured Use 'create' to begin configuring a new zone. zonecfg:zfszone> create zonecfg:zfszone> set zonepath=/zonepool/zones zonecfg:zfszone> verify zonecfg:zfszone> exit # zoneadm -z zfszone install cannot create ZFS dataset zonepool/zones: dataset already exists Preparing to install zone <zfszone>. Creating list of files to copy from the global zone. Copying <8960> files to the zone. . . . |
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 zfszone running /zonepool/zones native shared # lucreate -n zfsBE . . . # luupgrade -u -n zfsBE -s /net/install/export/s10up/latest 40410 blocks miniroot filesystem is <lofs> Mounting miniroot at </net/system/export/s10up/latest/Solaris_10/Tools/Boot> Validating the contents of the media </net/system/export/s10up/latest>. The media is a standard Solaris media. The media contains an operating system upgrade image. The media contains <Solaris> version <10>. Constructing upgrade profile to use. Locating the operating system upgrade program. Checking for existence of previously scheduled Live Upgrade requests. Creating upgrade profile for BE <zfsBE>. Determining packages to install or upgrade for BE <zfsBE>. Performing the operating system upgrade of the BE <zfsBE>. CAUTION: Interrupting this process may leave the boot environment unstable or unbootable. Upgrading Solaris: 100% completed Installation of the packages from this media is complete. Updating package information on boot environment <zfsBE>. Package information successfully updated on boot environment <zfsBE>. Adding operating system patches to the BE <zfsBE>. The operating system patch installation is complete. INFORMATION: The file </var/sadm/system/logs/upgrade_log> on boot environment <zfsBE> contains a log of the upgrade operation. INFORMATION: The file </var/sadm/system/data/upgrade_cleanup> on boot environment <zfsBE> contains a log of cleanup operations required. INFORMATION: Review the files listed above. Remember that all of the files are located on boot environment <zfsBE>. Before you activate boot environment <zfsBE>, determine if any additional system maintenance is required or if additional media of the software distribution must be installed. The Solaris upgrade of the boot environment <zfsBE> is complete. Installing failsafe Failsafe install is complete. # luactivate zfsBE # init 6 # lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- zfsBE yes no no yes - zfs2BE yes yes yes no - # zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared - zfszone installed /zonepool/zones native shared |
UFS ルートファイルシステムとゾーンルートを持つシステムを Solaris 10 5/09 以降のリリースに移行するには、次の手順を使用します。その後、Oracle Solaris Live Upgrade を使用して ZFS BE を作成します。
次の手順では、UFS BE の名前の例として c0t1d0s0、UFS ゾーンルートとして zonepool/zfszone、ZFS ルート BE として zfsBE を使用しています。
システムで以前の Solaris 10 リリースが稼働している場合は、Solaris 10 5/09 以降のリリースにアップグレードします。
Solaris 10 リリースが稼働しているシステムのアップグレードについては、『Oracle Solaris 10 9/10 インストールガイド (Solaris Live Upgrade とアップグレードの計画)』を参照してください。
ルートプールを作成します。
ルートプールの要件については、「ZFS をサポートするための Oracle Solaris インストールと Oracle Solaris Live Upgrade の要件」を参照してください。
UFS 環境のゾーンが起動されることを確認します。
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 zfszone running /zonepool/zones native shared |
新しい ZFS ブート環境を作成します。
# lucreate -c c1t1d0s0 -n zfsBE -p rpool |
このコマンドは、新しいブート環境のデータセットをルートプールに確立し、現在のブート環境をゾーンも含めてそれらのデータセットにコピーします。
新しい ZFS ブート環境をアクティブにします。
# lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- c1t1d0s0 yes no no yes - zfsBE yes yes yes no - # luactivate zfsBE A Live Upgrade Sync operation will be performed on startup of boot environment <zfsBE>. . . . |
システムを再起動します。
# init 6 |
新しい BE に ZFS ファイルシステムとゾーンが作成されていることを確認します。
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 6.17G 60.8G 98K /rpool rpool/ROOT 4.67G 60.8G 21K /rpool/ROOT rpool/ROOT/zfsBE 4.67G 60.8G 4.67G / rpool/dump 1.00G 60.8G 1.00G - rpool/swap 517M 61.3G 16K - zonepool 634M 7.62G 24K /zonepool zonepool/zones 270K 7.62G 633M /zonepool/zones zonepool/zones-c1t1d0s0 634M 7.62G 633M /zonepool/zones-c1t1d0s0 zonepool/zones-c1t1d0s0@zfsBE 262K - 633M - # zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared - zfszone installed /zonepool/zones native shared |
この例では、UFS ルートファイルシステムとゾーンルート (/uzone/ufszone) およびルート以外の ZFS プール (pool) とゾーンルート (/pool/zfszone) を持つ Oracle Solaris 10 9/10 システムを、ZFS ルートファイルシステムに移行します。移行を行う前に、ZFS ルートプールが作成されていることと、ゾーンがインストールされ起動されていることを確認してください。
# zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared 2 ufszone running /uzone/ufszone native shared 3 zfszone running /pool/zones/zfszone native shared |
# lucreate -c ufsBE -n zfsBE -p rpool Analyzing system configuration. No name for current boot environment. Current boot environment is named <zfsBE>. Creating initial configuration for primary boot environment <zfsBE>. The device </dev/dsk/c1t0d0s0> is not a root device for any boot environment; cannot get BE ID. PBE configuration successful: PBE name <ufsBE> PBE Boot Device </dev/dsk/c1t0d0s0>. Comparing source boot environment <ufsBE> 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/c1t1d0s0> is not a root device for any boot environment; cannot get BE ID. Creating configuration for boot environment <zfsBE>. Source boot environment is <ufsBE>. Creating boot environment <zfsBE>. Creating file systems on boot environment <zfsBE>. Creating <zfs> file system for </> in zone <global> on <rpool/ROOT/zfsBE>. Populating file systems on boot environment <zfsBE>. Checking selection integrity. Integrity check OK. Populating contents of mount point </>. Copying. Creating shared file system mount points. Copying root of zone <ufszone> to </.alt.tmp.b-EYd.mnt/uzone/ufszone>. Creating snapshot for <pool/zones/zfszone> on <pool/zones/zfszone@zfsBE>. Creating clone for <pool/zones/zfszone@zfsBE> on <pool/zones/zfszone-zfsBE>. Creating compare databases for boot environment <zfsBE>. Creating compare database for file system </rpool/ROOT>. Creating compare database for file system </>. Updating compare databases on boot environment <zfsBE>. Making boot environment <zfsBE> bootable. Creating boot_archive for /.alt.tmp.b-DLd.mnt updating /.alt.tmp.b-DLd.mnt/platform/sun4u/boot_archive Population of boot environment <zfsBE> successful. Creation of boot environment <zfsBE> successful. # lustatus Boot Environment Is Active Active Can Copy Name Complete Now On Reboot Delete Status -------------------------- -------- ------ --------- ------ ---------- ufsBE yes yes yes no - zfsBE yes no no yes - # luactivate zfsBE . . . # init 6 . . . # zfs list NAME USED AVAIL REFER MOUNTPOINT pool 628M 66.3G 19K /pool pool/zones 628M 66.3G 20K /pool/zones pool/zones/zfszone 75.5K 66.3G 627M /pool/zones/zfszone pool/zones/zfszone-ufsBE 628M 66.3G 627M /pool/zones/zfszone-ufsBE pool/zones/zfszone-ufsBE@zfsBE 98K - 627M - rpool 7.76G 59.2G 95K /rpool rpool/ROOT 5.25G 59.2G 18K /rpool/ROOT rpool/ROOT/zfsBE 5.25G 59.2G 5.25G / rpool/dump 2.00G 59.2G 2.00G - rpool/swap 517M 59.7G 16K - # zoneadm list -cv ID NAME STATUS PATH BRAND IP 0 global running / native shared - ufszone installed /uzone/ufszone native shared - zfszone installed /pool/zones/zfszone native shared |