zonecfg および zoneadm コマンドを使用すると、既存の非大域ゾーンをあるシステムから別のシステムに移行できます。ゾーンは停止され、現在のホストから切り離されます。zonepath はターゲットホストに移動され、そこで接続されます。
ゾーンの移行には、次の要件が適用されます。
移行前に、ソースシステム上のアクティブでない BE をすべて削除する必要があります。
ターゲットシステム上の大域ゾーンで、元のソースホストと同じかそれ以降の Oracle Solaris 11 リリースが稼働している必要があります。
ゾーンが正常に動作することを保証するには、元のソースホストにインストールされている必須オペレーティングシステムパッケージと同じかまたはそれ以降のバージョンのものが、ターゲットシステムにインストールされている必要があります。
サードパーティー製品のパッケージなど、ほかのパッケージは異なっていてもかまいません。
ゾーンに依存するパッケージよりも後のバージョンが新しいホストにインストールされている場合、–u または –U のオプションを指定した zoneadm attach を使用すると、新しいホストに一致させるためにゾーン内のそれらのパッケージを更新します。接続時更新ソフトウェアは、移行対象のゾーンを調べ、新しいホストに一致するように更新する必要のあるパッケージを決定します。このようなパッケージだけが更新されます。残りのパッケージは、ゾーンによって異なる可能性があります。ゾーン内にインストールされ、大域ゾーンにはインストールされていないパッケージがある場合、それらのパッケージは無視され、そのままの状態になります。
rootzpool または zpool リソースによって参照される ZFS プールをエクスポートしなかったシステムからゾーンを移行する場合は、zpools を強制的にインポートするオプションの使用が必要になることがあります。ZFS プールが別のシステムにインポートされていないことが確実な場合にのみ、このオプションを使用してください。複数のシステムに同一の ZFS プールを同時にインポートすると、データの破損が生じます。
# zoneadm -z zonename attach -x force-zpool-import
# zoneadm -z zonename attach -x attach-last-booted-zbe
詳細については、beadm(1M) および solaris(5) を参照してください。
zoneadm detach プロセスにより、別のシステムでゾーンを接続するのに必要な情報が作成されます。zoneadm attach プロセスは、ターゲットマシンがゾーンのホストとして機能するための適正な構成を保持していることを検証します。
新規ホストで zonepath を使用可能にする方法は複数存在するため、あるシステムから別のシステムへの zonepath の実際の移動は、大域管理者が手動で行います。
新規システムへの接続時に、ゾーンはインストール済みの状態になります。