vxrootmir - create a mirror of a Veritas Volume Manager root disk
/etc/vx/bin/vxrootmir [-g diskgroup] [-t tasktag]
[[-v] [-b] [-R] root_mirror]
The vxrootmir command creates mirrors of all of the volumes on a Veritas Volume Manager (VxVM) rootable boot disk, and makes the new disk bootable.
A disk to be used as a mirror can be specified either by its VM disk name (disk media name) or by its device name (disk access name).
If a disk media name is specified, it is validated to make sure that it exists and that it has been properly initialized. This validation includes making sure that the private region is at the same location and has the same length as the private region on the primary root disk, and that the sum of the lengths of all of the subdisks located on the primary root disk will fit within the available space in the public region of the specified disk.
If a disk access name is specified, it is validated to make sure it exists and is not in use, and that the total length of all the subdisks on the primary root disk will fit within the public region. The disk is then initialized to contain a private region with the same offset and length as the private region on the primary root disk. A new disk media name is assigned to the disk formed from the prefix rootdisk followed by the next available number (for example, rootdisk02, rootdisk03, and so on).
All volumes that have a subdisk on the primary VxVM root disk are mirrored on the specified disk. When the root volume (rootvol) is mirrored, the vxassist command executes vxbootsetup to set up the new disk as a boot disk.
The -p option allows you to mirror the volumes on the root disk as stripe columns across several disks. The argument to this option is a list of disks that are to be used for the stripe column mirrors. If not enough disks are specified, vxrootmir prints a message to the standard error output, including information on how many disks are required, and then exits. When initialized for VxVM use, these stripe column disks are named with the prefix rootaux followed by the next available number (for example, rootaux01, rootaux02, and so on).
If the system was booted from the VxVM root disk that is being mirrored, this option uses the setboot command to set the alternate boot disk to the specified mirror. If the system was booted from another root disk (such as an LVM root disk), an alternate root disk is not set. If the -v option is also specified, information is displayed on the current setboot settings, and on whether the alternate boot disk is set to the specified mirror.
Specifies the boot disk group.
Specifies the disks that are to be used for stripe column targets when mirroring the VxVM root disk. The disks can be specified either as disk access names, or as disk media names if they have previously been initialized for use with VxVM. If specified as disk access names, the disks are checked for existence, correct size, and availability for use.
Indicates that only the volumes required to boot successfully from the new mirror are to be mirrored. This is essentially the same behavior that would occur in the absence of a full license.
Marks any tasks that are registered to track the progress of an operation with the tag tasktag. This option is passed to vxassist when mirroring volumes, so any child tasks are also tagged with tasktag.
Displays verbose output including timestamps for operations in progress. This option is useful as mirroring large volumes can take a long time.
Specifies the disk to be used as a mirror by its disk access name (such as c0t2d0).
Specifies the disk to be used as a mirror by its disk media name (such as rootdisk03).
This example shows the vxrootmir command being invoked in its simpliest form:
The next example shows how to use the -R option with vxrootmir. This demonstrates how mirroring appears in the absence of a full license:
# /etc/vx/bin/vxrootmir -v -b -R c5t10d0
Gathering information on the current VxVM root configuration
vxrootmir: 10:10: Checking specified disk(s) for usability
vxrootmir: 10:10: Preparing disk c5t10d0 as a VxVM disk
vxrootmir: 10:10: Adding disk c5t10d0 to rootdg as rootdisk02
vxrootmir: 10:10: Mirroring only volumes required for root mirror boot
vxrootmir: 10:10: Mirroring volume standvol
vxrootmir: 10:11: Mirroring volume swapvol
vxrootmir: 10:18: Mirroring volume rootvol
vxrootmir: 10:20: Current setboot values:
vxrootmir: 10:20: Primary: 0/4/0/1.11.0
vxrootmir: 10:20: Alternate: 0/4/0/1.13.0
vxrootmir: 10:20: Making c5t10d0 (0/4/0/1.10.0) the alternate boot disk
vxrootmir: 10:20: Disk c5t10d0 is now a mirrored root disk
The final example shows how to specify a list of disks for use as stripe column mirrors:
# /etc/vx/bin/vxrootmir -v -p c5t11d0,c5t12d0,c5t13d0 c5t10d0
Gathering information on the current VxVM root configuration
vxrootmir: 12:11: Checking specified disk(s) for usability
vxrootmir: 12:11: Preparing disk c5t10d0 as a VxVM disk
vxrootmir: 12:11: Adding disk c5t10d0 to rootdg as rootdisk02
vxrootmir: 12:11: Preparing disk c5t11d0 as a VxVM disk
vxrootmir: 12:11: Adding disk c5t11d0 to rootdg as DM rootstpm01
vxrootmir: 12:11: Preparing disk c5t12d0 as a VxVM disk
vxrootmir: 12:11: Adding disk c5t12d0 to rootdg as DM rootstpm02
vxrootmir: 12:11: Preparing disk c5t13d0 as a VxVM disk
vxrootmir: 12:11: Adding disk c5t13d0 to rootdg as DM rootstpm03
vxrootmir: 12:11: Mirroring all volumes on root disk
vxrootmir: 12:11: Mirroring volume standvol
vxrootmir: 12:12: Mirroring volume swapvol
vxrootmir: 12:19: Mirroring volume rootvol
vxrootmir: 12:21: Mirroring volume optvol
vxrootmir: 12:24: Mirroring volume usrvol
vxrootmir: 12:27: Mirroring volume homevol
vxrootmir: 12:28: Mirroring volume tmpvol
vxrootmir: 12:28: Mirroring volume varvol
vxrootmir: 12:36: Disk c5t10d0 is now a mirrored root disk
If the vxrootmir command aborts for any reason, or if you interrupt the command during execution, an attempt is made to clean up the VxVM objects that had been generated up to the time of the abort or interruption. All mirror plexes that had already been added, or that were in the process of being added when the interruption occurred, are removed. All Data Media (DM) objects that were created are also removed. If a plex or a DM object cannot be removed, an explanatory message is displayed.
setboot(1M), vxassist(1M), vxbootsetup(1M), vxintro(1M), vxmirror(1M), vxtask(1M)