diff options
Diffstat (limited to 'man/pvmove.8.in')
-rw-r--r-- | man/pvmove.8.in | 187 |
1 files changed, 0 insertions, 187 deletions
diff --git a/man/pvmove.8.in b/man/pvmove.8.in deleted file mode 100644 index 39fdfe40a..000000000 --- a/man/pvmove.8.in +++ /dev/null @@ -1,187 +0,0 @@ -.TH PVMOVE 8 "LVM TOOLS #VERSION#" "Sistina Software UK" \" -*- nroff -*- -.SH NAME -pvmove \(em move physical extents -.SH SYNOPSIS -.B pvmove -.RB [ \-\-abort ] -.RB [ \-\-alloc -.IR AllocationPolicy ] -.RB [ \-\-atomic ] -.RB [ \-b | \-\-background ] -.RB [ \-\-commandprofile -.IR ProfileName ] -.RB [ \-d | \-\-debug ] -.RB [ \-h | \-\-help ] -.RB [ \-i | \-\-interval -.IR Seconds ] -.RB [ \-\-noudevsync ] -.RB [ \-\-reportformat -.RB { basic | json }] -.RB [ \-v | \-\-verbose ] -.RB [ \-n | \-\-name -.IR LogicalVolume ] -.RI [ SourcePhysicalVolume [ :PE [ \-PE ]...] -.RI [ DestinationPhysicalVolume [ :PE [ \-PE ]...]...]] -.SH DESCRIPTION -pvmove allows you to move the allocated physical extents (PEs) on -.I SourcePhysicalVolume -to one or more other physical volumes (PVs). -You can optionally specify a source -.I LogicalVolume -in which case only extents used by that LV will be moved to -free (or specified) extents on -.IR DestinationPhysicalVolume (s). -If no -.I DestinationPhysicalVolume -is specified, the normal allocation rules for the Volume Group are used. - -If pvmove gets interrupted for any reason (e.g. the machine crashes) -then run pvmove again without any PhysicalVolume arguments to -restart any moves that were in progress from the last checkpoint. -Alternatively use \fBpvmove \-\-abort\fP at any time to abort. The -resulting location of logical volumes after an abort is issued depends -on whether the -.B \-\-atomic -option was used when starting the pvmove process. - -You can run more than one pvmove at once provided they are moving data -off different SourcePhysicalVolumes, but additional pvmoves will ignore -any Logical Volumes already in the process of being changed, so some -data might not get moved. - -\fBpvmove\fP works as follows: - -1. A temporary 'pvmove' Logical Volume is created to store -details of all the data movements required. - -2. Every Logical Volume in the Volume Group is searched -for contiguous data that need moving -according to the command line arguments. -For each piece of data found, a new segment is added to the end of the -pvmove LV. -This segment takes the form of a temporary mirror to copy the data -from the original location to a newly-allocated location. -The original LV is updated to use the new temporary mirror segment -in the pvmove LV instead of accessing the data directly. - -3. The Volume Group metadata is updated on disk. - -4. The first segment of the pvmove Logical Volume is activated and starts -to mirror the first part of the data. Only one segment is mirrored at once -as this is usually more efficient. - -5. A daemon repeatedly checks progress at the specified time interval. -When it detects that the first temporary mirror is in-sync, -it breaks that mirror so that only the new location for that data gets used -and writes a checkpoint into the Volume Group metadata on disk. -Then it activates the mirror for the next segment of the pvmove LV. - -6. When there are no more segments left to be mirrored, -the temporary Logical Volume is removed and the Volume Group metadata -is updated so that the Logical Volumes reflect the new data locations. - -Note that this new process cannot support the original LVM1 -type of on-disk metadata. Metadata can be converted using \fBvgconvert\fP(8). - -If the -.B \-\-atomic -option is used, a slightly different approach is used for the move. Again, -a temporary 'pvmove' logical volume is created to store the details of all -the data movements required. This temporary LV contains all the segments of -the various LVs that need to be moved. However this time, an identical -logical volume is allocated that contains the same number of segments and -a mirror is created to copy the contents from the first temporary LV to the -second. When a complete copy is accomplished, the temporary logical volumes -are removed, leaving behind the segments on the destination physical volume. -If an abort is issued during the move, all logical volumes being moved will -remain on the source physical volume. - -.SH OPTIONS -See \fBlvm\fP(8) for common options. -.TP -.B \-\-abort -Abort any moves in progress. If the -.B \-\-atomic -option was used to start the pvmove, all logical volumes will remain on -the source physical volume. Otherwise, those segments that have completed -the move will stay on the destination physical volume, while those that -have not will remain on the source physical volume. -.TP -.B \-\-atomic -Make the entire operation atomic. That is, ensure that all affected logical -volumes are moved to the destination physical volume together; unless the move -has been aborted. If the move has been aborted, all logical volumes will -remain on the source physical volume. -.TP -.B \-\-noudevsync -Disable udev synchronisation. The -process will not wait for notification from udev. -It will continue irrespective of any possible udev processing -in the background. You should only use this if udev is not running -or has rules that ignore the devices LVM2 creates. -.TP -.BR \-b ", " \-\-background -Run the daemon in the background. -.TP -.BR \-i ", " \-\-interval " " \fISeconds -Report progress as a percentage at regular intervals. -.TP -.BR \-n ", " \-\-name " " \fILogicalVolume -Move only the extents belonging to -.I LogicalVolume -from -.I SourcePhysicalVolume -instead of all allocated extents to the destination physical volume(s). - -.SH Examples -To move all Physical Extents that are used by simple Logical Volumes on -/dev/sdb1 to free Physical Extents elsewhere in the Volume Group use: -.sp -.B pvmove /dev/sdb1 -.P -Additionally, a specific destination device /dev/sdc1 -can be specified like this: -.sp -.B pvmove /dev/sdb1 /dev/sdc1 -.P -To perform the action only on extents belonging to the single Logical Volume -lvol1 do this: -.sp -.B pvmove \-n lvol1 /dev/sdb1 /dev/sdc1 -.P -Rather than moving the contents of the entire device, it is possible to -move a range of Physical Extents - for example numbers 1000 to 1999 -inclusive on /dev/sdb1 - like this: -.sp -.B pvmove /dev/sdb1:1000\-1999 -.P -A range can also be specified as start+length, so -.sp -.B pvmove /dev/sdb1:1000+1000 -.P -also refers to 1000 Physical Extents starting from Physical Extent number 1000. -(Counting starts from 0, so this refers to the 1001st to the 2000th inclusive.) -.P -To move a range of Physical Extents to a specific location (which must have -sufficient free extents) use the form: -.sp -.B pvmove /dev/sdb1:1000\-1999 /dev/sdc1 -.sp -or -.sp -.B pvmove /dev/sdb1:1000\-1999 /dev/sdc1:0\-999 -.P -If the source and destination are on the same disk, the -.B anywhere -allocation policy would be needed, like this: -.sp -.B pvmove \-\-alloc anywhere /dev/sdb1:1000\-1999 /dev/sdb1:0\-999 -.P -The part of a specific Logical Volume present within in a range of Physical -Extents can also be picked out and moved, like this: -.sp -.B pvmove \-n lvol1 /dev/sdb1:1000\-1999 /dev/sdc1 -.SH SEE ALSO -.BR lvm (8), -.BR vgconvert (8) -.BR pvs (8) |