BigAdmin System Administration Portal
Feature Tech Tip
Print-friendly VersionPrint-friendly Version

Upgrading a Zone on an EFI-Labeled Disk in the Solaris 10 OS

Nagaraj Yedathore, March 2009

Problem Statement

If a zone in the Solaris OS is installed on a disk that is labeled with Extensible Firmware Interface (EFI)/GUID Partition Table (GPT), then the zone and the system cannot be upgraded. A system upgrade fails with insufficient space for the zone upgrade.

Reason

The Solaris installer program doesn't recognize disks with an EFI/GPT label. The Solaris installer program handles initial install tasks, standard upgrade tasks, and Solaris Live Upgrade tasks. So an install or upgrade using Solaris installer technology on an EFI/GPT-labeled disk fails.

The creation or installation of zones is not related to the Solaris installer technology. So zones can be installed on EFI-labeled disks. But when such zones need to be upgraded along with the global-zone through standard upgrade, the Solaris installer knows about the existence of the zones but fails to identify the file system the zones exist on, causing the Solaris upgrade to fail.

Solution

There is a feature provided in the Solaris 10 5/08 Operating System that enables you to detach the zone, migrate the zonepath to another host or to a disk or file system on the same host, and then attach the zone to a new location. (This feature is found in later releases as well.)

Note: If a zone is migrated to a different host, refer to the product documentation regarding the compatibility between the two hosts.

This Solaris feature can be used locally to move the zone to a slice on a disk with an SMI label (that is, a traditional Volume Table of Contents from Sun Microsystems, Inc.). This feature allows you to perform the upgrade, before moving the zone back to its original location.

Here are the steps to follow:

1. If it is not already installed, apply Kernel Update 127127-11 (for SPARC based systems) or 127128-11 (for x86 based systems), which should enable you to attach and detach zones.

2. Halt and detach the zone that is installed on the EFI/GPT-labeled disk.

For more information on zone migration, refer to the zone migration documentation at http://docs.sun.com, for example, System Administration Guide: Solaris Containers-Resource Management and Solaris Zones.

# zoneadm -z tzone halt
# zoneadm -z tzone detach

3. Archive the zonepath of the zone being migrated. For example:

# zonecfg -z tzone info | grep zonepath
zonepath: /export/efi_disk/tzone
# cd /export/efi_disk
# tar cf tzone_archive.tar tzone

4. Move the zone to a file system on an SMI-labeled disk.

# cd /export/smi_disk
# tar xf /export/efi_disk/tzone_archive.tar

5. Notify the zone subsystem about this migration.

# zonecfg -z tzone
zonecfg:tzone> set zonepath=/export/smi_disk/tzone
zonecfg:tzone> commit
zonecfg:tzone> exit

6. Attach and boot the zone from the new zonepath.

# zoneadm -z tzone attach
# zoneadm -z tzone boot

Now the system and the zone work normally.

7. Perform the standard Solaris upgrade.

8. After the upgrade is complete, boot the system.

The zone is booted if it was set with autoboot.

9. Halt and detach the zone.

10. Archive the zonepath.

11. Move the archived zone system back to the EFI/GPT-labeled disk, its earlier home.

12. Notify the zone subsystem of this migration back to its original home.

13. Attach and boot the zone from its old zonepath.

For More Information

Here are additional resources:


Comments (latest comments first)

Discuss and comment on this resource in the BigAdmin Wiki

Unless otherwise licensed, code in all technical manuals herein (including articles, FAQs, samples) is provided under this License.


BigAdmin
  
 
BigAdmin Upgrade Hub