rmvol - Removes a volume from an existing file domain
/usr/sbin/rmvol [-f] [-v] special domain
Specifies the block special device name, such as /dev/rz2c, of the volume that you are removing from the file domain. Specifies the name of the file domain.
Forces the removal of a volume that contains one or more stripe segments without first requesting confirmation. Displays messages that describe which files are moved off the specified volume. Using this flag slows the rmvol process.
The rmvol utility enables you to decrease the number of volumes within an existing file domain. When you attempt to remove a volume, the file system automatically migrates the contents of that volume to another volume in the file domain.
The logical structure of the filesets in a file domain is unaffected when you remove a volume. If you remove a volume that contains a stripe segment, the rmvol utility moves the segment to another volume that does not already contain a stripe segment of the same file. If a file is striped across all volumes in the file domain, the utility requests confirmation before placing a second stripe segment on a volume that has one.
Before you can remove a volume from a file domain, all filesets in the file domain must be mounted. If you try to remove a volume from an active file domain that includes unmounted filesets, the system displays an error message indicating that a fileset is unmounted. This message is repeated until you mount all filesets in the file domain.
If you attempt to remove a volume from an inactive file domain, the system returns the ENO_SUCH_DOMAIN error message. A file domain is inactive when none of its filesets is mounted. In this case, the rmvol command does not remove the volume.
If there is not enough free space on other volumes in the file domain to accept the offloaded files from the departing volume, the rmvol utility moves as many files as possible to free space on other volumes. Then a message is sent to the console indicating that there is not enough space to complete the procedure. The files that were not yet moved remain on the original volume.
You can interrupt the rmvol process without damaging your file domain. AdvFS will stop removing files from the volume. Files already removed from the volume will remain in their new location. Interrupting an rmvol operation with the kill command can leave the volume in an inaccessible state. If a volume does not allow new allocations after an rmvol operation, use the chvol command with the -A flag to reactivate the volume.
You cannot run the rmvol utility while the defragment, balance, rmfset, or rmvol utility is running on the same domain.
You must have root privilege to access this utility. Additionally, you must register the Advanced File System Advanced Utilities license to use this utility.
The following example removes a volume from an active file domain called accounts_dmn. The file domain contains two volumes, /dev/rz1c and /dev/rz2c. This example removes volume /dev/rz1c from the file domain:
# rmvol /dev/rz1c accounts_dmn
The /etc/fdmns/accounts_dmn subdirectory now has only one entry, the entry for /dev/rz2c.
The following example removes one volume from a three-volume file domain. Each volume in the accounts_dmn file domain contains one segment of /usr/myfile, which is a three-way striped file:
# rmvol /dev/rz3c accounts_dmn rmvol: Removing volume '/dev/rz3c' from domain 'accounts_dmn'
This volume contains one stripe segment of /usr/myfile, which will be moved to another volume in the file domain that already contains a stripe segment of /usr/myfile.
Do you want to continue? (y/n):y One volume in the accounts_dmn file domain now contains two stripe segments of myfile, which is no longer an optimally striped file.
Specifies the command path. Contains file domain names and devices.
addvol(8), advfs(4), advscan(8), fdmns(4), mkfdmn(8), stripe(4).