Although Solaris Volume Manager is not meant to be a “backup product,” it does provide a means for backing up mirrored data without unmounting the mirror or taking the entire mirror offline, and without halting the system or denying users access to data. This process happens as follows: one of the submirrors is taken offline, temporarily losing the mirroring, and backed up. That submirror is then placed online and resynchronized as soon as the backup is complete.
You can use this procedure on any file system except root (/). Be aware that this type of backup creates a “snapshot” of an active file system. Depending on how the file system is being used when it is write-locked, some files and file content on the backup might not correspond to the actual files on disk.
The following limitations apply to this procedure:
If you use this procedure on a two-way mirror, be aware that data redundancy is lost while one submirror is offline for backup. A three-way mirror does not have this problem.
There is some overhead on the system when the offlined submirror is brought back online after the backup is complete.
The high-level steps in this procedure are as follows:
Write-locking the file system (UFS only). Do not lock root (/).
Using the metaoffline command to take one submirror offline from the mirror
Unlocking the file system
Backing up the data on the offlined submirror
Using the metaonline command to place the offlined submirror back online
If you use these procedures regularly, put them into a script for ease of use.
Run the metastat command to make sure the mirror is in the “Okay” state.
A mirror that is in the “Maintenance” state should be repaired first.
For all file systems except root (/), lock the file system from writes.
# /usr/sbin/lockfs -w mount point
Only a UFS needs to be write-locked. If the volume is set up as a raw device for database management software or some other application, running lockfs is not necessary. (You might, however, want to run the appropriate vendor-supplied utility to flush any buffers and lock access.)
Write-locking root (/) causes the system to hang, so it should never be performed.
Take one submirror offline from the mirror.
# metaoffline mirror submirror
In this command:
Is the volume name of the mirror.
Is the volume name of the submirror (volume) being taken offline.
Reads will continue to be made from the other submirror. The mirror will be out of sync as soon as the first write is made. This inconsistency is corrected when the offlined submirror is brought back online in Step 6.
There is no need to run the fsck command on the offlined file system.
Unlock the file system and allow writes to continue.
# /usr/sbin/lockfs -u mount-point
You might need to perform necessary unlocking procedures based on vendor-dependent utilities used in Step 2 above.
Perform a backup of the offlined submirror.
Use the ufsdump command or your usual backup utility.
To ensure a proper backup, use the raw volume, for example, /dev/md/rdsk/d4. Using “rdsk” allows greater than 2 Gbyte access.
Place the submirror back online.
# metaonline mirror submirror
Solaris Volume Manager automatically begins resynchronizing the submirror with the mirror.
This example uses a mirror named d1, consisting of submirrors d2 and d3. The submirror d3 is taken offline and backed up while submirror d2 stays online. The file system on the mirror is /home1.
# /usr/sbin/lockfs -w /home1 # metaoffline d1 d3 d1: submirror d3 is offlined # /usr/sbin/lockfs -u /home1 (Perform backup using /dev/md/rdsk/d3) # metaonline d1 d3 d1: submirror d3 is onlined