How to Move a Zone From a Shared Storage Configuration

Perform this procedure to move a zone that uses shared storage (ZOSS) to a configuration that uses a local file system. The zoneadm move command creates new target ZFS datasets that correspond to the specified new zonepath. You can optionally unconfigure or remove the ZFS storage pool that the zone no longer uses.

  1. Become a zone administrator.
  2. Verify that the zone is in the installed state.
    global$ pfbash zoneadm list -cv
      ID NAME             STATUS      PATH                      BRAND    IP
       0 global           running     /                         solaris  shared
       - zonename
    installed  /system/zones/zonename     solaris  excl
  3. If the zone you want to move is in the running state, halt the zone.

    After the zone is halted, verify that it is now in the installed state.

    global$ pfbash zoneadm -z zonename halt
    global$ zoneadm list -cv
  4. Reconfigure the zone to move it to a local file system.
    global$ zoneadm -z zonename move -x remove-rootzpool [-x extended-option ...]
    -x {remove-rootzpool | force-zpool-destroy=rpool | force-storage-destroy-all}

    Specifies extended options to process the rootzpool resource of the zone after moving the zone out of shared storage. The ‐x option can take only one extended option per operation, but you can specify more than one ‐x option in a single command.

    remove-rootzpool

    Required to move a zone from shared storage. Specifies removing the rootzpool resource from the zone configuration.

    force-zpool-destroy=rpool

    Specifies exporting and then destroying the ZFS storage pool that is specified by the rootzpool resource.

    force-storage-destroy-all

    Specifies destroying the storage objects in the ZFS storage pool that is specified by the rootzpool resource.

    Note that you cannot specify a new zone path to which to move the zone.

    The reconfigured zone remains in the installed state.