この章では、Solaris Live Upgrade を使用して ZFS ブート環境を作成する方法を詳細な手順によって説明します。
Solaris Live Upgrade を使った、UFS ファイルシステムから ZFS ルートプールへの移行や ZFS ブート環境の作成は、Solaris 10 10/08 リリースの新機能です。UFS ファイルシステムがインストールされているシステムで Solaris Live Upgrade を利用する場合は、本書のパート I「Solaris Live Upgrade によるアップグレード」を参照してください。
この章で手順を説明する作業は次のとおりです。
非大域ゾーンがインストールされている場合の ZFS の使用手順については、第 14 章非大域ゾーンがインストールされている ZFS の Solaris Live Upgradeを参照してください。
ここでは、UFS ファイルシステムを ZFS ファイルシステムに移行する手順について説明します。ブート環境を作成すると、クリティカルファイルシステムをアクティブな UFS ブート環境から ZFS ルートプールにコピーできるようになります。lucreate コマンドで、クリティカルファイルシステムを既存の ZFS ルートプール内の新しいブート環境にコピーします。ユーザー定義の (共有可能な) ファイルシステムはコピーされず、ソース UFS ブート環境と共有されません。また、/swap は、UFS ファイルシステムと ZFS ルートプール間で共有されません。クリティカルファイルシステムと共有可能ファイルシステムの概要については、「ファイルシステムのタイプ」を参照してください。
アクティブな UFS ルート (/) ファイルシステムを ZFS ルートプールに移行するには、ルートプールの名前を指定します。クリティカルファイルシステムは、このルートプールにコピーされます。
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 ソフトウェアでは、この作業を実行することはできません。
スーパーユーザーになるか、同等の役割を引き受けます。
SunSolve の Web サイトにある infodoc 206844 の手順に従って、Solaris Live Upgrade パッケージを削除および追加します。
3 つの Solaris Live Upgrade パッケージ SUNWluu、SUNWlur、および SUNWlucfg は、Solaris Live Upgrade を使ってアップグレードするのに必要なソフトウェアを構成します。これらのパッケージには、既存のソフトウェア、新しい機能、およびバグ修正が含まれています。Solaris Live Upgrade を使用する前に、既存パッケージを削除しないで新しいパッケージをシステムにインストールすると、ターゲットリリースへのアップグレードは失敗します。SUMWlucfg パッケージは、Solaris 10 8/07 以降のリリースの新機能です。Solaris 10 8/07 より前のリリースから Solaris Live Upgrade パッケージを使用する場合は、このパッケージを削除する必要はありません。
# pkgrm SUNWlucfg SUNWluu SUNWlur |
アップグレードのターゲットリリースから、新しい Solaris Live Upgrade パッケージをインストールします。詳細については、「Solaris Live Upgrade のインストール」を参照してください。
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 |
以上で正しく移行するために必要なパッケージとパッチがインストールされました。
ZFS ルートプールを作成します。
ZFS ルートプールは、ブート可能かつアップグレード可能にするため単一のスライス上に作成します。
# zpool create rpool c0t1d0s5 |
作成する新しい ZFS ルートプールの名前を指定します。
新しいルートプールをディスクスライス c0t1d0s5 上に作成します。
新規ルートプールの作成の詳細については、『Solaris ZFS 管理ガイド』を参照してください。
UFS ルート (/) ファイルシステムを新しい ZFS ルートプールに移行します。
# lucreate [-c ufsBE] -n new-zfsBE -p rpool |
現在の UFS ブート環境に ufsBE という名前を割り当てます。このオプションは必須ではなく、また、最初のブート環境の作成時にのみ使用します。lucreate コマンドを初めて実行する場合に -c オプションを省略すると、デフォルトの名前が自動的に作成されます。
作成するブート環境に new-zfsBE という名前を割り当てます。名前は、システム上で一意となるように指定する必要があります。
新しく作成した ZFS ルート (/) ファイルシステムを、rpool で定義した ZFS ルートプールに配置します。
新しい ZFS ブート環境の作成には、しばらく時間がかかることがあります。UFS ファイルシステムのデータが ZFS ルートプールにコピーされます。非アクティブなブート環境が作成された場合は、luupgrade コマンドまたは luactivate コマンドを使用して、新しい ZFS ブート環境をアップグレードまたはアクティブにすることができます。
(省略可能) ブート環境が完成したことを確認します。
この例では、lustatus コマンドを使って、ブート環境の作成が完了しブート可能かどうかを確認します。
# lustatus boot environment Is Active Active Can Copy Name Complete Now OnReboot Delete Status ----------------------------------------------------------------- ufsBE yes yes yes no - new-zfsBE yes no no yes - |
(省略可能) システム上の基本データセット情報を確認します。
list コマンドで、システム上のすべてのデータセットの名前を表示できます。この例では、rpool が ZFS プールの名前、new-zfsBE が新しく作成した 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/new-zfsBE 5.38G 57.6G 551M /tmp/.alt.luupdall.110034 rpool/dump 1.95G - 1.95G - rpool/swap 1.95G - 1.95G - |
表示される新しいブート環境のマウントポイントは、luactivate コマンドが実行されるまでの一時的なものです。/dump ボリュームと /swap ボリュームは、元の UFS ブート環境と共有されませんが、ZFS ルートプール内およびルートプール内のブート環境内で共有されます。
これで、新しいブート環境をアップグレードおよびアクティブにできます。例 13–1 を参照してください。
この例では、新しい ZFS ルートプール rpool が、別のスライス C0t0d0s4 上に作成されます。lucreate コマンドが、現在稼動中の UFS ブート環境 c0t0d0 を新しい ZFS ブート環境 new-zfsBE に移行し、その新しいブート環境を rpool に配置します。
# zpool create rpool C0t0d0s4 # zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 9.29G 57.6G 20K /rpool # lucreate -c c0t0d0 -n new-zfsBE -p rpool Analyzing system configuration. Current boot environment is named <c0t0d0>. Creating initial configuration for primary boot environment <c0t0d0>. The device </dev/dsk/c0t0d0> is not a root device for any boot environment; cannot get BE ID. PBE configuration successful: PBE name <c0t0d0> PBE Boot Device </dev/dsk/c0t0d0>. Comparing source boot environment <c0t0d0> 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 <c0t0d0>. Creating boot environment <new-zfsBE>. Creating file systems on boot environment <new-zfsBE>. Creating <zfs> file system for </> in zone <global> on <rpool/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 <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 ------------------------------------------------------------------------ c0t0d0 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/new-zfsBE 5.38G 57.6G 551M /tmp/.alt.luupdall.110034 rpool/dump 1.95G - 1.95G - rpool/swap 1.95G - 1.95G - |
これで、新しいブート環境をアップグレードまたはアクティブにできます。
この例では、luupgrade コマンドを使って、-s オプションで指定された場所に格納されているイメージから新しいブート環境をアップグレードしています。
# luupgrade -n zfsBE -u -s /net/install/export/s10/combined.s10 51135 blocks miniroot filesystem is <lofs> Mounting miniroot at </net/install/export/solaris_10/combined.solaris_10_wos /Solaris_10/Tools/Boot> Validating the contents of the media </net/install/export/s10/combined.s10>. The media is a standard Solaris media. The media contains an operating system upgrade image. The media contains Solaris version <10_1008>. 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. 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. |
新しいブート環境は、作成後いつでもアクティブにできます。
# 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. . . . |
UFS ブート環境に戻す場合は、ZFS ブート環境で作成したすべての ZFS ストレージプールをもう一度インポートしてください。これらは、UFS ブート環境で自動的に使用可能にはならないからです。元の UFS ブート環境に切り替えると、次の例のようなメッセージが表示されます。
# luactivate c0t0d0 WARNING: The following files have changed on both the current boot environment <new-zfsBE> zone <global> and the boot environment to be activated <c0t0d0>: /etc/zfs/zpool.cache INFORMATION: The files listed above are in conflict between the current boot environment <zfsBE> zone <global> and the boot environment to be activated <c0t0d0>. These files will not be automatically synchronized from the current boot environment <new-zfsBE> when boot environment <c0t0d0> |
ここでは、既存の ZFS ルートプールがある場合に、新規 ZFS ブート環境をそのプール内に作成する手順について説明します。非アクティブなブート環境の作成後、新しいブート環境を都合のよいときにアップグレードおよびアクティブにできます。同一プール内でブート環境を作成する場合、-p オプションは不要です。
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 ソフトウェアでは、この作業を実行することはできません。
スーパーユーザーになるか、同等の役割を引き受けます。
SunSolve の Web サイトにある infodoc 206844 の手順に従って、Solaris Live Upgrade パッケージを削除および追加します。
3 つの Solaris Live Upgrade パッケージ SUNWluu、SUNWlur、および 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 |
新しい Solaris Live Upgrade パッケージをインストールします。詳細については、「Solaris Live Upgrade のインストール」を参照してください。
Solaris Live Upgrade を実行する前に、次のパッチをインストールする必要があります。これらのパッチにより、リリースに最新のバグ修正と新機能がすべて含まれるようになります。
SunSolve で最新のパッチリストを確認してください。SunSolve の Web サイトで、infodoc 206844 (以前の 72099) を検索してください。
パッチをローカルディスクに保存する場合は、/var/tmp/lupatches のようなディレクトリを作成し、パッチをそのディレクトリにダウンロードします。
SunSolve の Web サイトから、パッチリストを取得します。
この例のようにパッチディレクトリに移動します。
# cd /var/tmp/lupatches |
patchadd コマンドを使用してパッチをインストールします。
# patchadd path-to-patches patch_id patch_id |
path-to-patches は、/var/tmp/lupatches などのパッチディレクトリへのパスです。patch_id はパッチの番号です。複数のパッチ名を指定する場合は、スペースで区切ります。
パッチは、info doc 206844 で指定されている順序で適用してください。
必要に応じてシステムをリブートします。いくつかのパッチは、有効にするためにリブートする必要があります。
x86 のみ: システムをリブートする必要があります。そうしないと、Solaris Live Upgrade は失敗します。
# init 6 |
以上で新しいブート環境を正しく作成するために必要なパッケージとパッチがインストールされました。
新しいブート環境を作成します。
# lucreate [-c zfsBE] -n new-zfsBE |
現在のブート環境に zfsBE という名前を割り当てます。このオプションは必須ではなく、また、最初のブート環境の作成時にのみ使用します。lucreate を初めて実行する場合に -c オプションを省略すると、デフォルトの名前が作成されます。
作成するブート環境に名前を割り当てます。名前は、システム上で一意となるように指定する必要があります。
新しいブート環境の作成は、きわめて短時間で完了します。現在の ZFS ルートプール内の各データセットのスナップショットが作成され、各スナップショットからクローンが作成されます。スナップショットはディスク容量の効率が非常に高いので、この処理は最小限のディスク容量しか消費しません。非アクティブなブート環境が作成された場合は、luupgrade コマンドまたは luactivate コマンドを使用して、新しい ZFS ブート環境をアップグレードまたはアクティブにすることができます。
(省略可能) ブート環境が完成したことを確認します。
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 - |
(省略可能) システム上の基本データセット情報を確認します。
この例では、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 を参照してください。
新規 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. . . . |
ここでは、既存の ZFS ルートプールがある場合に、新規のルートプール内に新規の ZFS ブート環境を作成する手順について説明します。非アクティブなブート環境の作成後、新しいブート環境を都合のよいときにアップグレードおよびアクティブにできます。新しいブート環境を配置する場所を指定する -p オプションは必須です。既存の ZFS ルートプールは、ブート可能かつアップグレード可能にするため単一のスライス上に配置してください。
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 ソフトウェアでは、この作業を実行することはできません。
スーパーユーザーになるか、同等の役割を引き受けます。
SunSolve の Web サイトにある infodoc 206844 の手順に従って、Solaris Live Upgrade パッケージを削除および追加します。
3 つの Solaris Live Upgrade パッケージ SUNWluu、SUNWlur、および 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 |
新しい Solaris Live Upgrade パッケージをインストールします。詳細については、「Solaris Live Upgrade のインストール」を参照してください。
Solaris Live Upgrade を実行する前に、次のパッチをインストールする必要があります。これらのパッチにより、リリースに最新のバグ修正と新機能がすべて含まれるようになります。
SunSolve で最新のパッチリストを確認してください。SunSolve の Web サイトで、infodoc 206844 (以前の 72099) を検索してください。
パッチをローカルディスクに保存する場合は、/var/tmp/lupatches のようなディレクトリを作成し、パッチをそのディレクトリにダウンロードします。
SunSolve の Web サイトから、パッチリストを取得します。
この例のようにパッチディレクトリに移動します。
# cd /var/tmp/lupatches |
patchadd コマンドを使用してパッチをインストールします。
# patchadd path-to-patches patch_id patch_id |
path-to-patches は、/var/tmp/lupatches などのパッチディレクトリへのパスです。patch_id はパッチの番号です。複数のパッチ名を指定する場合は、スペースで区切ります。
パッチは、info doc 206844 で指定されている順序で適用してください。
必要に応じてシステムをリブートします。いくつかのパッチは、有効にするためにリブートする必要があります。
x86 のみ: システムをリブートする必要があります。そうしないと、Solaris Live Upgrade は失敗します。
# init 6 |
以上で正しく移行するために必要なパッケージとパッチがインストールされました。
ZFS ルートプールを作成します。
ZFS ルートプールは、ブート可能かつアップグレード可能にするため単一のスライス上に作成します。
# zpool create rpool2 c0t1d0s5 |
新しい ZFS ルートプールの名前です。
rpool2 を、ブート可能なスライス c0t1d0s5 に配置するように指定します。
新規ルートプールの作成の詳細については、『Solaris ZFS 管理ガイド』を参照してください。
新しいブート環境を作成します。
# lucreate [-c zfsBE] -n new-zfsBE -p rpool2 |
現在の ZFS ブート環境に zfsBE という名前を割り当てます。
作成するブート環境に名前を割り当てます。名前は、システム上で一意となるように指定する必要があります。
新しく作成した ZFS ルートのブート環境を rpool2 で定義した ZFS ルートプールに配置します。
新しい ZFS ブート環境の作成には、しばらく時間がかかることがあります。ファイルシステムのデータが新しい ZFS ルートプールにコピーされます。非アクティブなブート環境が作成された場合は、luupgrade コマンドまたは luactivate コマンドを使用して、新しい ZFS ブート環境をアップグレードまたはアクティブにすることができます。
(省略可能) ブート環境が完成したことを確認します。
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 - |
(省略可能) システム上の基本データセット情報を確認します。
次の例では、システム上のすべてのデータセットの名前を表示しています。表示される新しいブート環境のマウントポイントは、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 を参照してください。
この例では、新しい 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 - |
ここでは、現在アクティブなブート環境として使用されていない既存の ZFS ルートプールまたは UFS ブート環境がある場合に、新しい ZFS ブート環境をこのブート環境から作成する手順について説明します。新しい ZFS ブート環境の作成後、この新しいブート環境を都合のよいときにアップグレードおよびアクティブにできます。
現在稼動中のシステム以外のソースからブート環境を作成する場合は、lucreate コマンドに -s オプションを指定して実行します。-s オプションは、UFS ファイルシステムの場合と同じように機能します。-s オプションには、代替ルート (/) ファイルシステムのパスを指定します。この代替ルート (/) ファイルシステムが、新しい ZFS ルートプールを作成するためのソースとなります。代替ルートは、UFS (/) ルートファイルシステム、ZFS ルートプールのどちらでもかまいません。コピー処理には、システムによって時間がかかる場合があります。
次の例では、別の ZFS ルートプール上にブート環境を作成する場合の、-s オプションの使用方法を示します。
次のコマンドで、既存の ZFS ルートプールから新規 ZFS ルートプールを作成します。-n オプションで、作成するブート環境に new-zfsBE という名前を割り当てます。-s オプションには、現在稼動中のブート環境の代わりにコピー元として使用する、ブート環境 rpool3 を指定します。-p オプションでは、新しいブート環境を rpool2 に配置することを指定します。
# lucreate -n new-zfsBE -s rpool3 -p rpool2 # lustatus boot environment Is Active Active Can Copy Name Complete Now OnReboot Delete Status ------------------------------------------------------------------------ zfsBE yes yes yes no - zfsBE2 yes no no yes - zfsBE3 yes no no yes - 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 - rpool3 9.29G 57.6G 20K /rpool2 rpool3/ROOT/ 5.38G 57.6G 18K /rpool2/ROOT rpool3/ROOT/zfsBE3 5.38G 57.6G 551M /tmp/.new.luupdall.109859 rpool3/dump 3.99G - 3.99G - rpool3/swap 3.99G - 3.99G - prool 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 - |
これで、新しいブート環境をアップグレードおよびアクティブにできます。
アップグレード後にエラーが検出された場合、またはアップグレードしたコンポーネントとアプリケーションの間に互換性がない場合には、luactivate コマンドを使って元のブート環境に戻すことができます。
UFS ブート環境から ZFS ルートプールに移行した場合に、UFS ブート環境に戻すには、ZFS ブート環境に作成されたすべての ZFS ストレージプールをもう一度インポートしてください。これらの ZFS ストレージプールは、UFS ブート環境で自動的に使用可能にはなりません。元の UFS ブート環境に切り替えると、次の例のようなメッセージが表示されます。
# luactivate c0t0d0 WARNING: The following files have changed on both the current boot environment <new-ZFSbe> zone <global> and the boot environment to be activated <c0t0d0>: /etc/zfs/zpool.cache INFORMATION: The files listed above are in conflict between the current boot environment <ZFSbe> zone <global> and the boot environment to be activated <c0t0d0>. These files will not be automatically synchronized from the current boot environment <new-ZFSbe> when boot environment <c0t0d0> |
元のブート環境に戻す例については、第 6 章障害回復: 元のブート環境へのフォールバック (作業)を参照してください。
この章のトピックに関する追加情報については、表 13–1 のリソースを参照してください。
表 13–1 追加情報
リソース |
場所 |
---|---|
概要、計画、詳細な手順を含む ZFS の情報 | |
UFS ファイルシステムがインストールされているシステムでの Solaris Live Upgrade の使用 |