diff options
author | Alasdair G Kergon <agk@redhat.com> | 2017-03-14 00:47:46 +0000 |
---|---|---|
committer | Alasdair G Kergon <agk@redhat.com> | 2017-03-14 00:47:46 +0000 |
commit | ca905681ccf9afd2b8313b5a7a89ac609c9a7ba5 (patch) | |
tree | 8816d8d92260d202f9c0edb83617b2e994ae2e1a /man/lvconvert.8_pregen | |
parent | 38292ca1d0a78aa6b06a4180b8e87cb9dd417a22 (diff) | |
download | lvm2-ca905681ccf9afd2b8313b5a7a89ac609c9a7ba5.tar.gz |
man: Revise internal man page generation process.
For each section 8 man page, a .8_gen file is created from one of:
.8_main - Old-style man page - content used directly
.8_des and .8_end - Description and end section of a generated page
.8_pregen - Pre-generated page used if the generator fails
Other man sections are not generated and use the suffix .5_main or .7_main.
Developers should use 'make generate' to regenerate the .8_pregen files.
Diffstat (limited to 'man/lvconvert.8_pregen')
-rw-r--r-- | man/lvconvert.8_pregen | 2059 |
1 files changed, 2059 insertions, 0 deletions
diff --git a/man/lvconvert.8_pregen b/man/lvconvert.8_pregen new file mode 100644 index 000000000..bc8d53fc1 --- /dev/null +++ b/man/lvconvert.8_pregen @@ -0,0 +1,2059 @@ +.TH LVCONVERT 8 "LVM TOOLS 2.02.169(2)-git (2016-11-30)" "Red Hat, Inc." +.SH NAME +. +lvconvert \- Change logical volume layout +.P +. +.SH SYNOPSIS +.br +.P +. +\fBlvconvert\fP \fIoption_args\fP \fIposition_args\fP +.br + [ \fIoption_args\fP ] +.br + [ \fIposition_args\fP ] +.br +.P + +.P +.ad l + \fB--alloc\fP \fBcontiguous\fP|\fBcling\fP|\fBcling_by_tags\fP|\fBnormal\fP|\fBanywhere\fP|\fBinherit\fP +.ad b +.br +.ad l + \fB-b\fP|\fB--background\fP +.ad b +.br +.ad l + \fB-H\fP|\fB--cache\fP +.ad b +.br +.ad l + \fB--cachemetadataformat\fP \fBauto\fP|\fB1\fP|\fB2\fP +.ad b +.br +.ad l + \fB--cachemode\fP \fBwritethrough\fP|\fBwriteback\fP|\fBpassthrough\fP +.ad b +.br +.ad l + \fB--cachepolicy\fP \fIString\fP +.ad b +.br +.ad l + \fB--cachepool\fP \fILV\fP +.ad b +.br +.ad l + \fB--cachesettings\fP \fIString\fP +.ad b +.br +.ad l + \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] +.ad b +.br +.ad l + \fB--commandprofile\fP \fIString\fP +.ad b +.br +.ad l + \fB--config\fP \fIString\fP +.ad b +.br +.ad l + \fB-d\fP|\fB--debug\fP +.ad b +.br +.ad l + \fB--discards\fP \fBpassdown\fP|\fBnopassdown\fP|\fBignore\fP +.ad b +.br +.ad l + \fB--driverloaded\fP \fBy\fP|\fBn\fP +.ad b +.br +.ad l + \fB-f\fP|\fB--force\fP +.ad b +.br +.ad l + \fB-h\fP|\fB--help\fP +.ad b +.br +.ad l + \fB-i\fP|\fB--interval\fP \fINumber\fP +.ad b +.br +.ad l + \fB--longhelp\fP +.ad b +.br +.ad l + \fB--merge\fP +.ad b +.br +.ad l + \fB--mergemirrors\fP +.ad b +.br +.ad l + \fB--mergesnapshot\fP +.ad b +.br +.ad l + \fB--mergethin\fP +.ad b +.br +.ad l + \fB--metadataprofile\fP \fIString\fP +.ad b +.br +.ad l + \fB--mirrorlog\fP \fBcore\fP|\fBdisk\fP +.ad b +.br +.ad l + \fB-m\fP|\fB--mirrors\fP [\fB+\fP|\fB-\fP]\fINumber\fP +.ad b +.br +.ad l + \fB-n\fP|\fB--name\fP \fIString\fP +.ad b +.br +.ad l + \fB--noudevsync\fP +.ad b +.br +.ad l + \fB--originname\fP \fILV\fP +.ad b +.br +.ad l + \fB--poolmetadata\fP \fILV\fP +.ad b +.br +.ad l + \fB--poolmetadatasize\fP \fISize\fP[m|UNIT] +.ad b +.br +.ad l + \fB--poolmetadataspare\fP \fBy\fP|\fBn\fP +.ad b +.br +.ad l + \fB--profile\fP \fIString\fP +.ad b +.br +.ad l + \fB-q\fP|\fB--quiet\fP +.ad b +.br +.ad l + \fB-r\fP|\fB--readahead\fP \fBauto\fP|\fBnone\fP|\fINumber\fP +.ad b +.br +.ad l + \fB-R\fP|\fB--regionsize\fP \fISize\fP[m|UNIT] +.ad b +.br +.ad l + \fB--repair\fP +.ad b +.br +.ad l + \fB--replace\fP \fIPV\fP +.ad b +.br +.ad l + \fB-s\fP|\fB--snapshot\fP +.ad b +.br +.ad l + \fB--splitcache\fP +.ad b +.br +.ad l + \fB--splitmirrors\fP \fINumber\fP +.ad b +.br +.ad l + \fB--splitsnapshot\fP +.ad b +.br +.ad l + \fB--startpoll\fP +.ad b +.br +.ad l + \fB--stripes\fP \fINumber\fP +.ad b +.br +.ad l + \fB-I\fP|\fB--stripesize\fP \fISize\fP[k|UNIT] +.ad b +.br +.ad l + \fB--swapmetadata\fP +.ad b +.br +.ad l + \fB-t\fP|\fB--test\fP +.ad b +.br +.ad l + \fB-T\fP|\fB--thin\fP +.ad b +.br +.ad l + \fB--thinpool\fP \fILV\fP +.ad b +.br +.ad l + \fB--trackchanges\fP +.ad b +.br +.ad l + \fB--type\fP \fBlinear\fP|\fBstriped\fP|\fBsnapshot\fP|\fBmirror\fP|\fBraid\fP|\fBthin\fP|\fBcache\fP|\fBthin-pool\fP|\fBcache-pool\fP +.ad b +.br +.ad l + \fB--uncache\fP +.ad b +.br +.ad l + \fB--usepolicies\fP +.ad b +.br +.ad l + \fB-v\fP|\fB--verbose\fP +.ad b +.br +.ad l + \fB--version\fP +.ad b +.br +.ad l + \fB-y\fP|\fB--yes\fP +.ad b +.br +.ad l + \fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP +.ad b + +.P + +.SH DESCRIPTION +lvconvert changes the LV type and includes utilities for LV data +maintenance. The LV type controls data layout and redundancy. +The LV type is also called the segment type or segtype. + +To display the current LV type, run the command: + +.B lvs \-o name,segtype +.I LV + +The +.B linear +type is equivalent to the +.B striped +type when one stripe exists. +In that case, the types can sometimes be used interchangably. + +In most cases, the +.B mirror +type is deprecated and the +.B raid1 +type should be used. They are both implementations of mirroring. + +In some cases, an LV is a single device mapper (dm) layer above physical +devices. In other cases, hidden LVs (dm devices) are layered between the +visible LV and physical devices. LVs in the middle layers are called sub LVs. +A command run on a visible LV sometimes operates on a sub LV rather than +the specified LV. In other cases, a sub LV must be specified directly on +the command line. + +Striped raid types are +.B raid0/raid0_meta +, +.B raid5 +(an alias for raid5_ls), +.B raid6 +(an alias for raid6_zr) and +.B raid10 +(an alias for raid10_near). + +As opposed to mirroring, raid5 and raid6 stripe data and calculate parity +blocks. The parity blocks can be used for data block recovery in case devices +fail. A maximum number of one device in a raid5 LV may fail and two in case +of raid6. Striped raid types typically rotate the parity blocks for performance +reasons thus avoiding contention on a single device. Layouts of raid5 rotating +parity blocks can be one of left-asymmetric (raid5_la), left-symmetric (raid5_ls +with alias raid5), right-asymmetric (raid5_ra), right-symmetric (raid5_rs) and raid5_n, +which doesn't rotate parity blocks. Any \"_n\" layouts allow for conversion between +raid levels (raid5_n -> raid6 or raid5_n -> striped/raid0/raid0_meta). +raid6 layouts are zero-restart (raid6_zr with alias raid6), next-restart (raid6_nr), +next-continue (raid6_nc). Additionally, special raid6 layouts for raid level conversions +between raid5 and raid6 are raid6_ls_6, raid6_rs_6, raid6_la_6 and raid6_ra_6. Those +correspond to their raid5 counterparts (e.g. raid5_rs can be directly converted to raid6_rs_6 +and vice-versa). +raid10 (an alias for raid10_near) is currently limited to one data copy and even number of +sub LVs. This is a mirror group layout thus a single sub LV may fail per mirror group +without data loss. +Striped raid types support converting the layout, their stripesize +and their number of stripes. + +The striped raid types combined with raid1 allow for conversion from linear -> striped/raid0/raid0_meta +and vice-versa by e.g. linear <-> raid1 <-> raid5_n (then adding stripes) <-> striped/raid0/raid0_meta. + +Sub LVs can be displayed with the command +.B lvs -a + + +.P +.SH USAGE +.br +.P +. +Convert LV to linear. +.br +.P +\fBlvconvert\fP \fB--type\fP \fBlinear\fP \fILV\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Convert LV to striped. +.br +.P +\fBlvconvert\fP \fB--type\fP \fBstriped\fP \fILV\fP +.br +.RS 4 +.ad l +[ \fB-I\fP|\fB--stripesize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB-R\fP|\fB--regionsize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB-i\fP|\fB--interval\fP \fINumber\fP ] +.ad b +.br +.ad l +[ \fB--stripes\fP \fINumber\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Convert LV to raid or change raid layout +.br +(a specific raid level must be used, e.g. raid1). +.br +.P +\fBlvconvert\fP \fB--type\fP \fBraid\fP \fILV\fP +.br +.RS 4 +.ad l +[ \fB-m\fP|\fB--mirrors\fP [\fB+\fP|\fB-\fP]\fINumber\fP ] +.ad b +.br +.ad l +[ \fB-I\fP|\fB--stripesize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB-R\fP|\fB--regionsize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB-i\fP|\fB--interval\fP \fINumber\fP ] +.ad b +.br +.ad l +[ \fB--stripes\fP \fINumber\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Convert LV to raid1 or mirror, or change number of mirror images. +.br +.P +\fBlvconvert\fP \fB-m\fP|\fB--mirrors\fP [\fB+\fP|\fB-\fP]\fINumber\fP \fILV\fP +.br +.RS 4 +.ad l +[ \fB-R\fP|\fB--regionsize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB-i\fP|\fB--interval\fP \fINumber\fP ] +.ad b +.br +.ad l +[ \fB--mirrorlog\fP \fBcore\fP|\fBdisk\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Convert raid LV to change number of stripe images. +.br +.P +\fBlvconvert\fP \fB--stripes\fP \fINumber\fP \fILV\fP\fI_raid\fP +.br +.RS 4 +.ad l +[ \fB-i\fP|\fB--interval\fP \fINumber\fP ] +.ad b +.br +.ad l +[ \fB-R\fP|\fB--regionsize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB-I\fP|\fB--stripesize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Convert raid LV to change the stripe size. +.br +.P +\fBlvconvert\fP \fB-I\fP|\fB--stripesize\fP \fISize\fP[k|UNIT] \fILV\fP\fI_raid\fP +.br +.RS 4 +.ad l +[ \fB-i\fP|\fB--interval\fP \fINumber\fP ] +.ad b +.br +.ad l +[ \fB-R\fP|\fB--regionsize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Split images from a raid1 or mirror LV and use them to create a new LV. +.br +.P +\fBlvconvert\fP \fB--splitmirrors\fP \fINumber\fP \fB-n\fP|\fB--name\fP \fILV\fP\fI_new\fP \fILV\fP\fI_cache_mirror_raid1\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Split images from a raid1 LV and track changes to origin. +.br +.P +\fBlvconvert\fP \fB--splitmirrors\fP \fINumber\fP \fB--trackchanges\fP \fILV\fP\fI_cache_raid1\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Merge LV images that were split from a raid1 LV. +.br +.P +\fBlvconvert\fP \fB--mergemirrors\fP \fIVG\fP|\fILV\fP\fI_linear_raid\fP|\fITag\fP ... +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Convert LV to a thin LV, using the original LV as an external origin. +.br +.P +\fBlvconvert\fP \fB--type\fP \fBthin\fP \fB--thinpool\fP \fILV\fP \fILV\fP\fI_linear_striped_cache_raid\fP +.br +.RS 4 +.ad l +[ \fB-T\fP|\fB--thin\fP ] +.ad b +.br +.ad l +[ \fB-r\fP|\fB--readahead\fP \fBauto\fP|\fBnone\fP|\fINumber\fP ] +.ad b +.br +.ad l +[ \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--originname\fP \fILV\fP\fI_new\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadata\fP \fILV\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadatasize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB--poolmetadataspare\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--metadataprofile\fP \fIString\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Convert LV to type cache. +.br +.P +\fBlvconvert\fP \fB--type\fP \fBcache\fP \fB--cachepool\fP \fILV\fP \fILV\fP\fI_linear_striped_thinpool_raid\fP +.br +.RS 4 +.ad l +[ \fB-H\fP|\fB--cache\fP ] +.ad b +.br +.ad l +[ \fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB-r\fP|\fB--readahead\fP \fBauto\fP|\fBnone\fP|\fINumber\fP ] +.ad b +.br +.ad l +[ \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB--cachemetadataformat\fP \fBauto\fP|\fB1\fP|\fB2\fP ] +.ad b +.br +.ad l +[ \fB--cachemode\fP \fBwritethrough\fP|\fBwriteback\fP|\fBpassthrough\fP ] +.ad b +.br +.ad l +[ \fB--cachepolicy\fP \fIString\fP ] +.ad b +.br +.ad l +[ \fB--cachesettings\fP \fIString\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadata\fP \fILV\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadatasize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB--poolmetadataspare\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--metadataprofile\fP \fIString\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Convert LV to type thin-pool. +.br +.P +\fBlvconvert\fP \fB--type\fP \fBthin-pool\fP \fILV\fP\fI_linear_striped_cache_raid\fP +.br +.RS 4 +.ad l +[ \fB-I\fP|\fB--stripesize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB-r\fP|\fB--readahead\fP \fBauto\fP|\fBnone\fP|\fINumber\fP ] +.ad b +.br +.ad l +[ \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--stripes\fP \fINumber\fP ] +.ad b +.br +.ad l +[ \fB--discards\fP \fBpassdown\fP|\fBnopassdown\fP|\fBignore\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadata\fP \fILV\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadatasize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB--poolmetadataspare\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--metadataprofile\fP \fIString\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Convert LV to type cache-pool. +.br +.P +\fBlvconvert\fP \fB--type\fP \fBcache-pool\fP \fILV\fP\fI_linear_striped_raid\fP +.br +.RS 4 +.ad l +[ \fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB-r\fP|\fB--readahead\fP \fBauto\fP|\fBnone\fP|\fINumber\fP ] +.ad b +.br +.ad l +[ \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB--cachemetadataformat\fP \fBauto\fP|\fB1\fP|\fB2\fP ] +.ad b +.br +.ad l +[ \fB--cachemode\fP \fBwritethrough\fP|\fBwriteback\fP|\fBpassthrough\fP ] +.ad b +.br +.ad l +[ \fB--cachepolicy\fP \fIString\fP ] +.ad b +.br +.ad l +[ \fB--cachesettings\fP \fIString\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadata\fP \fILV\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadatasize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB--poolmetadataspare\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--metadataprofile\fP \fIString\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Separate and keep the cache pool from a cache LV. +.br +.P +\fBlvconvert\fP \fB--splitcache\fP \fILV\fP\fI_thinpool_cache_cachepool\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Merge thin LV into its origin LV. +.br +.P +\fBlvconvert\fP \fB--mergethin\fP \fILV\fP\fI_thin\fP ... +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Merge COW snapshot LV into its origin. +.br +.P +\fBlvconvert\fP \fB--mergesnapshot\fP \fILV\fP\fI_snapshot\fP ... +.br +.RS 4 +.ad l +[ \fB-i\fP|\fB--interval\fP \fINumber\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Replace failed PVs in a raid or mirror LV. +.br +Repair a thin pool. +.br +.P +\fBlvconvert\fP \fB--repair\fP \fILV\fP\fI_thinpool_mirror_raid\fP +.br +.RS 4 +.ad l +[ \fB-i\fP|\fB--interval\fP \fINumber\fP ] +.ad b +.br +.ad l +[ \fB--usepolicies\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Replace specific PV(s) in a raid LV with another PV. +.br +.P +\fBlvconvert\fP \fB--replace\fP \fIPV\fP \fILV\fP\fI_raid\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Poll LV to continue conversion. +.br +.P +\fBlvconvert\fP \fB--startpoll\fP \fILV\fP\fI_mirror_raid\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Common options for command: +. +.RS 4 +.ad l +[ \fB-b\fP|\fB--background\fP ] +.ad b +.br +.ad l +[ \fB-f\fP|\fB--force\fP ] +.ad b +.br +.ad l +[ \fB--alloc\fP \fBcontiguous\fP|\fBcling\fP|\fBcling_by_tags\fP|\fBnormal\fP|\fBanywhere\fP|\fBinherit\fP ] +.ad b +.br +.ad l +[ \fB--noudevsync\fP ] +.ad b + +.RE +.br + +Common options for lvm: +. +.RS 4 +.ad l +[ \fB-d\fP|\fB--debug\fP ] +.ad b +.br +.ad l +[ \fB-h\fP|\fB--help\fP ] +.ad b +.br +.ad l +[ \fB-q\fP|\fB--quiet\fP ] +.ad b +.br +.ad l +[ \fB-t\fP|\fB--test\fP ] +.ad b +.br +.ad l +[ \fB-v\fP|\fB--verbose\fP ] +.ad b +.br +.ad l +[ \fB-y\fP|\fB--yes\fP ] +.ad b +.br +.ad l +[ \fB--commandprofile\fP \fIString\fP ] +.ad b +.br +.ad l +[ \fB--config\fP \fIString\fP ] +.ad b +.br +.ad l +[ \fB--driverloaded\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--longhelp\fP ] +.ad b +.br +.ad l +[ \fB--profile\fP \fIString\fP ] +.ad b +.br +.ad l +[ \fB--version\fP ] +.ad b + +.RE + +.SH OPTIONS +.br + +.HP +.ad l +\fB--alloc\fP \fBcontiguous\fP|\fBcling\fP|\fBcling_by_tags\fP|\fBnormal\fP|\fBanywhere\fP|\fBinherit\fP +.br +Determines the allocation policy when a command needs to allocate +Physical Extents (PEs) from the VG. Each VG and LV has an allocation policy +which can be changed with vgchange/lvchange, or overriden on the +command line. +\fBnormal\fP applies common sense rules such as not placing parallel stripes +on the same PV. +\fBinherit\fP applies the VG policy to an LV. +\fBcontiguous\fP requires new PEs be placed adjacent to existing PEs. +\fBcling\fP places new PEs on the same PV as existing PEs in the same +stripe of the LV. +If there are sufficient PEs for an allocation, but normal does not +use them, \fBanywhere\fP will use them even if it reduces performance, +e.g. by placing two stripes on the same PV. +Optional positional PV args on the command line can also be used to limit +which PVs the command will use for allocation. +See \fBlvm\fP(8) for more information about allocation. +.ad b + +.HP +.ad l +\fB-b\fP|\fB--background\fP +.br +If the operation requires polling, this option causes the command to +return before the operation is complete, and polling is done in the +background. +.ad b + +.HP +.ad l +\fB-H\fP|\fB--cache\fP +.br +Specifies the command is handling a cache LV or cache pool. +See --type cache and --type cache-pool. +See \fBlvmcache\fP(7) for more information about LVM caching. +.ad b + +.HP +.ad l +\fB--cachemetadataformat\fP \fBauto\fP|\fB1\fP|\fB2\fP +.br +Specifies the cache metadata format used by cache target. +.ad b + +.HP +.ad l +\fB--cachemode\fP \fBwritethrough\fP|\fBwriteback\fP|\fBpassthrough\fP +.br +Specifies when writes to a cache LV should be considered complete. +\fBwriteback\fP considers a write complete as soon as it is +stored in the cache pool. +\fBwritethough\fP considers a write complete only when it has +been stored in both the cache pool and on the origin LV. +While writethrough may be slower for writes, it is more +resilient if something should happen to a device associated with the +cache pool LV. With \fBpassthrough\fP, all reads are served +from the origin LV (all reads miss the cache) and all writes are +forwarded to the origin LV; additionally, write hits cause cache +block invalidates. See \fBlvmcache\fP(7) for more information. +.ad b + +.HP +.ad l +\fB--cachepolicy\fP \fIString\fP +.br +Specifies the cache policy for a cache LV. +See \fBlvmcache\fP(7) for more information. +.ad b + +.HP +.ad l +\fB--cachepool\fP \fILV\fP +.br +The name of a cache pool LV. +.ad b + +.HP +.ad l +\fB--cachesettings\fP \fIString\fP +.br +Specifies tunable values for a cache LV in "Key = Value" form. +Repeat this option to specify multiple values. +(The default values should usually be adequate.) +The special string value \fBdefault\fP switches +settings back to their default kernel values and removes +them from the list of settings stored in LVM metadata. +See \fBlvmcache\fP(7) for more information. +.ad b + +.HP +.ad l +\fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] +.br +The size of chunks in a snapshot, cache pool or thin pool. +For snapshots, the value must be a power of 2 between 4KiB and 512KiB +and the default value is 4. +For a cache pool the value must be between 32KiB and 1GiB +and the default value is 64. +For a thin pool the value must be between 64KiB and 1GiB +and the default value starts with 64 and scales up to fit the +pool metadata size within 128MiB, if the pool metadata size is not specified. +The value must be a multiple of 64KiB. +See \fBlvmthin\fP(7) and \fBlvmcache\fP(7) for more information. +.ad b + +.HP +.ad l +\fB--commandprofile\fP \fIString\fP +.br +The command profile to use for command configuration. +See \fBlvm.conf\fP(5) for more information about profiles. +.ad b + +.HP +.ad l +\fB--config\fP \fIString\fP +.br +Config settings for the command. These override lvm.conf settings. +The String arg uses the same format as lvm.conf, +or may use section/field syntax. +See \fBlvm.conf\fP(5) for more information about config. +.ad b + +.HP +.ad l +\fB-d\fP|\fB--debug\fP ... +.br +Set debug level. Repeat from 1 to 6 times to increase the detail of +messages sent to the log file and/or syslog (if configured). +.ad b + +.HP +.ad l +\fB--discards\fP \fBpassdown\fP|\fBnopassdown\fP|\fBignore\fP +.br +Specifies how the device-mapper thin pool layer in the kernel should +handle discards. +\fBignore\fP causes the thin pool to ignore discards. +\fBnopassdown\fP causes the thin pool to process discards itself to +allow reuse of unneeded extents in the thin pool. +\fBpassdown\fP causes the thin pool to process discards itself +(like nopassdown) and pass the discards to the underlying device. +See \fBlvmthin\fP(7) for more information. +.ad b + +.HP +.ad l +\fB--driverloaded\fP \fBy\fP|\fBn\fP +.br +If set to no, the command will not attempt to use device-mapper. +For testing and debugging. +.ad b + +.HP +.ad l +\fB-f\fP|\fB--force\fP ... +.br +Override various checks, confirmations and protections. +Use with extreme caution. +.ad b + +.HP +.ad l +\fB-h\fP|\fB--help\fP +.br +Display help text. +.ad b + +.HP +.ad l +\fB-i\fP|\fB--interval\fP \fINumber\fP +.br +Report progress at regular intervals. +.ad b + +.HP +.ad l +\fB--longhelp\fP +.br +Display long help text. +.ad b + +.HP +.ad l +\fB--merge\fP +.br +An alias for --mergethin, --mergemirrors, or --mergesnapshot, +depending on the type of LV. +.ad b + +.HP +.ad l +\fB--mergemirrors\fP +.br +Merge LV images that were split from a raid1 LV. +See --splitmirrors with --trackchanges. +.ad b + +.HP +.ad l +\fB--mergesnapshot\fP +.br +Merge COW snapshot LV into its origin. +When merging a snapshot, if both the origin and snapshot LVs are not open, +the merge will start immediately. Otherwise, the merge will start the +first time either the origin or snapshot LV are activated and both are +closed. Merging a snapshot into an origin that cannot be closed, for +example a root filesystem, is deferred until the next time the origin +volume is activated. When merging starts, the resulting LV will have the +origin's name, minor number and UUID. While the merge is in progress, +reads or writes to the origin appear as being directed to the snapshot +being merged. When the merge finishes, the merged snapshot is removed. +Multiple snapshots may be specified on the command line or a @tag may be +used to specify multiple snapshots be merged to their respective origin. +.ad b + +.HP +.ad l +\fB--mergethin\fP +.br +Merge thin LV into its origin LV. +The origin thin LV takes the content of the thin snapshot, +and the thin snapshot LV is removed. +See \fBlvmthin\fP(7) for more information. +.ad b + +.HP +.ad l +\fB--metadataprofile\fP \fIString\fP +.br +The metadata profile to use for command configuration. +See \fBlvm.conf\fP(5) for more information about profiles. +.ad b + +.HP +.ad l +\fB--mirrorlog\fP \fBcore\fP|\fBdisk\fP +.br +Specifies the type of mirror log for LVs with the "mirror" type +(does not apply to the "raid1" type.) +\fBdisk\fP is a persistent log and requires a small amount of +storage space, usually on a separate device from the data being mirrored. +\fBcore\fP is not persistent; the log is kept only in memory. +In this case, the mirror must be synchronized (by copying LV data from +the first device to others) each time the LV is activated, e.g. after reboot. +\fBmirrored\fP is a persistent log that is itself mirrored. +.ad b + +.HP +.ad l +\fB-m\fP|\fB--mirrors\fP [\fB+\fP|\fB-\fP]\fINumber\fP +.br +Specifies the number of mirror images in addition to the original LV +image, e.g. --mirrors 1 means there are two images of the data, the +original and one mirror image. +Optional positional PV args on the command line can specify the devices +the images should be placed on. +There are two mirroring implementations: "raid1" and "mirror". +These are the names of the corresponding LV types, or "segment types". +Use the --type option to specify which to use (raid1 is default, +and mirror is legacy) +Use lvm.conf global/mirror_segtype_default and +global/raid10_segtype_default to configure the default types. +The plus prefix \fB+\fP can be used, in which case +the number is added to the current number of images, +or the minus prefix \fB-\fP can be used, in which case +the number is subtracted from the current number of images. +See \fBlvmraid\fP(7) for more information. +.ad b + +.HP +.ad l +\fB-n\fP|\fB--name\fP \fIString\fP +.br +Specifies the name of a new LV. +When unspecified, a default name of "lvol#" is +generated, where # is a number generated by LVM. +.ad b + +.HP +.ad l +\fB--noudevsync\fP +.br +Disables udev synchronisation. The process will not wait for notification +from udev. It will continue irrespective of any possible udev processing +in the background. Only use this if udev is not running or has rules that +ignore the devices LVM creates. +.ad b + +.HP +.ad l +\fB--originname\fP \fILV\fP +.br +Specifies the name to use for the external origin LV when converting an LV +to a thin LV. The LV being converted becomes a read-only external origin +with this name. +.ad b + +.HP +.ad l +\fB--poolmetadata\fP \fILV\fP +.br +The name of a an LV to use for storing pool metadata. +.ad b + +.HP +.ad l +\fB--poolmetadatasize\fP \fISize\fP[m|UNIT] +.br +Specifies the size of the new pool metadata LV. +.ad b + +.HP +.ad l +\fB--poolmetadataspare\fP \fBy\fP|\fBn\fP +.br +Enable or disable the automatic creation and management of a +spare pool metadata LV in the VG. A spare metadata LV is reserved +space that can be used when repairing a pool. +.ad b + +.HP +.ad l +\fB--profile\fP \fIString\fP +.br +An alias for --commandprofile or --metadataprofile, depending +on the command. +.ad b + +.HP +.ad l +\fB-q\fP|\fB--quiet\fP ... +.br +Suppress output and log messages. Overrides --debug and --verbose. +Repeat once to also suppress any prompts with answer no. +.ad b + +.HP +.ad l +\fB-r\fP|\fB--readahead\fP \fBauto\fP|\fBnone\fP|\fINumber\fP +.br +Sets read ahead sector count of an LV. +\fBauto\fP is the default which allows the kernel to choose +a suitable value automatically. +\fBnone\fP is equivalent to zero. +.ad b + +.HP +.ad l +\fB-R\fP|\fB--regionsize\fP \fISize\fP[m|UNIT] +.br +Size of each raid or mirror synchronization region. +lvm.conf activation/raid_region_size can be used to +configure a default. +.ad b + +.HP +.ad l +\fB--repair\fP +.br +Replace failed PVs in a raid or mirror LV, or run a repair +utility on a thin pool. See \fBlvmraid\fP(7) and \fBlvmthin\fP(7) +for more information. +.ad b + +.HP +.ad l +\fB--replace\fP \fIPV\fP +.br +Replace a specific PV in a raid LV with another PV. +The new PV to use can be optionally specified after the LV. +Multiple PVs can be replaced by repeating this option. +See \fBlvmraid\fP(7) for more information. +.ad b + +.HP +.ad l +\fB-s\fP|\fB--snapshot\fP +.br +Combine a former COW snapshot LV with a former origin LV to reverse +a previous --splitsnapshot command. +.ad b + +.HP +.ad l +\fB--splitcache\fP +.br +Separates a cache pool from a cache LV, and keeps the unused cache pool LV. +Before the separation, the cache is flushed. Also see --uncache. +.ad b + +.HP +.ad l +\fB--splitmirrors\fP \fINumber\fP +.br +Splits the specified number of images from a raid1 or mirror LV +and uses them to create a new LV. If --trackchanges is also specified, +changes to the raid1 LV are tracked while the split LV remains detached. +.ad b + +.HP +.ad l +\fB--splitsnapshot\fP +.br +Separates a COW snapshot from its origin LV. The LV that is split off +contains the chunks that differ from the origin LV along with metadata +describing them. This LV can be wiped and then destroyed with lvremove. +.ad b + +.HP +.ad l +\fB--startpoll\fP +.br +Start polling an LV to continue processing a conversion. +.ad b + +.HP +.ad l +\fB--stripes\fP \fINumber\fP +.br +Specifies the number of stripes in a striped LV. This is the number of +PVs (devices) that a striped LV is spread across. Data that +appears sequential in the LV is spread across multiple devices in units of +the stripe size (see --stripesize). This does not apply to +existing allocated space, only newly allocated space can be striped. +.ad b + +.HP +.ad l +\fB-I\fP|\fB--stripesize\fP \fISize\fP[k|UNIT] +.br +The amount of data that is written to one device before +moving to the next in a striped LV. +.ad b + +.HP +.ad l +\fB--swapmetadata\fP +.br +Extracts the metadata LV from a pool and replaces it with another specified LV. +The extracted LV is preserved and given the name of the LV that replaced it. +Use for repair only. When the metadata LV is swapped out of the pool, it can +be activated directly and used with thin provisioning tools: +\fBcache_dump\fP(8), \fBcache_repair\fP(8), \fBcache_restore\fP(8), +\fBthin_dump\fP(8), \fBthin_repair\fP(8), \fBthin_restore\fP(8). +.ad b + +.HP +.ad l +\fB-t\fP|\fB--test\fP +.br +Run in test mode. Commands will not update metadata. +This is implemented by disabling all metadata writing but nevertheless +returning success to the calling function. This may lead to unusual +error messages in multi-stage operations if a tool relies on reading +back metadata it believes has changed but hasn't. +.ad b + +.HP +.ad l +\fB-T\fP|\fB--thin\fP +.br +Specifies the command is handling a thin LV or thin pool. +See --type thin, --type thin-pool, and --virtualsize. +See \fBlvmthin\fP(7) for more information about LVM thin provisioning. +.ad b + +.HP +.ad l +\fB--thinpool\fP \fILV\fP +.br +The name of a thin pool LV. +.ad b + +.HP +.ad l +\fB--trackchanges\fP +.br +Can be used with --splitmirrors on a raid1 LV. This causes +changes to the original raid1 LV to be tracked while the split images +remain detached. This allows the read-only detached image(s) to be +merged efficiently back into the raid1 LV later. Only the regions with +changed data are resynchronized during merge. (This option only applies +when using the raid1 LV type.) +.ad b + +.HP +.ad l +\fB--type\fP \fBlinear\fP|\fBstriped\fP|\fBsnapshot\fP|\fBmirror\fP|\fBraid\fP|\fBthin\fP|\fBcache\fP|\fBthin-pool\fP|\fBcache-pool\fP +.br +The LV type, also known as "segment type" or "segtype". +See usage descriptions for the specific ways to use these types. +For more information about redundancy and performance (\fBraid\fP<N>, \fBmirror\fP, \fBstriped\fP, \fBlinear\fP) see \fBlvmraid\fP(7). +For thin provisioning (\fBthin\fP, \fBthin-pool\fP) see \fBlvmthin\fP(7). +For performance caching (\fBcache\fP, \fBcache-pool\fP) see \fBlvmcache\fP(7). +For copy-on-write snapshots (\fBsnapshot\fP) see usage definitions. +Several commands omit an explicit type option because the type +is inferred from other options or shortcuts +(e.g. --stripes, --mirrors, --snapshot, --virtualsize, --thin, --cache). +Use inferred types with care because it can lead to unexpected results. +.ad b + +.HP +.ad l +\fB--uncache\fP +.br +Separates a cache pool from a cache LV, and deletes the unused cache pool LV. +Before the separation, the cache is flushed. Also see --splitcache. +.ad b + +.HP +.ad l +\fB--usepolicies\fP +.br +Perform an operation according to the policy configured in lvm.conf +or a profile. +.ad b + +.HP +.ad l +\fB-v\fP|\fB--verbose\fP ... +.br +Set verbose level. Repeat from 1 to 4 times to increase the detail +of messages sent to stdout and stderr. +.ad b + +.HP +.ad l +\fB--version\fP +.br +Display version information. +.ad b + +.HP +.ad l +\fB-y\fP|\fB--yes\fP +.br +Do not prompt for confirmation interactively but always assume the +answer yes. Use with extreme caution. +(For automatic no, see -qq.) +.ad b + +.HP +.ad l +\fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP +.br +For snapshots, this controls zeroing of the first 4KiB of data in the +snapshot. If the LV is read-only, the snapshot will not be zeroed. +For thin pools, this controls zeroing of provisioned blocks. +Provisioning of large zeroed chunks negatively impacts performance. +.ad b +.SH VARIABLES +.br + +.HP +\fIVG\fP +.br +Volume Group name. See \fBlvm\fP(8) for valid names. + +.HP +\fILV\fP +.br +Logical Volume name. See \fBlvm\fP(8) for valid names. +An LV positional arg generally includes the VG name and LV name, e.g. VG/LV. +LV followed by _<type> indicates that an LV of the +given type is required. (raid represents raid<N> type) + +.HP +\fIPV\fP +.br +Physical Volume name, a device path under /dev. +For commands managing physical extents, a PV positional arg +generally accepts a suffix indicating a range (or multiple ranges) +of physical extents (PEs). When the first PE is omitted, it defaults +to the start of the device, and when the last PE is omitted it defaults to end. +Start and end range (inclusive): \fIPV\fP[\fB:\fP\fIPE\fP\fB-\fP\fIPE\fP]... +Start and length range (counting from 0): \fIPV\fP[\fB:\fP\fIPE\fP\fB+\fP\fIPE\fP]... + +.HP +\fITag\fP +.br +Tag name. See \fBlvm\fP(8) for information about tag names and using tags +in place of a VG, LV or PV. + +.HP +\fIString\fP +.br +See the option description for information about the string content. + +.HP +\fISize\fP[UNIT] +.br +Size is an input number that accepts an optional unit. +Input units are always treated as base two values, regardless of +capitalization, e.g. 'k' and 'K' both refer to 1024. +The default input unit is specified by letter, followed by |UNIT. +UNIT represents other possible input units: \fBbBsSkKmMgGtTpPeE\fP. +b|B is bytes, s|S is sectors of 512 bytes, k|K is kilobytes, +m|M is megabytes, g|G is gigabytes, t|T is terabytes, +p|P is petabytes, e|E is exabytes. +(This should not be confused with the output control --units, where +capital letters mean multiple of 1000.) +.SH ENVIRONMENT VARIABLES +.br +See \fBlvm\fP(8) for information about environment variables used by lvm. +For example, LVM_VG_NAME can generally be substituted for a required VG parameter. +.SH ADVANCED USAGE +Alternate command forms, advanced command usage, and listing of all valid syntax for completeness. +.P +Convert LV to type mirror (also see type raid1), +.br +(also see lvconvert --mirrors). +.br +.P +\fBlvconvert\fP \fB--type\fP \fBmirror\fP \fILV\fP +.br +.RS 4 +.ad l +[ \fB-m\fP|\fB--mirrors\fP [\fB+\fP|\fB-\fP]\fINumber\fP ] +.ad b +.br +.ad l +[ \fB-R\fP|\fB--regionsize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB-i\fP|\fB--interval\fP \fINumber\fP ] +.ad b +.br +.ad l +[ \fB--mirrorlog\fP \fBcore\fP|\fBdisk\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Change the region size of an LV. +.br +.P +\fBlvconvert\fP \fB-R\fP|\fB--regionsize\fP \fISize\fP[m|UNIT] \fILV\fP\fI_raid\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Change the type of mirror log used by a mirror LV. +.br +.P +\fBlvconvert\fP \fB--mirrorlog\fP \fBcore\fP|\fBdisk\fP \fILV\fP\fI_mirror\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br +.RS 4 +[ \fIPV\fP ... ] +.RE + +-- + +.br + +Convert LV to a thin LV, using the original LV as an external origin +.br +(infers --type thin). +.br +.P +\fBlvconvert\fP \fB-T\fP|\fB--thin\fP \fB--thinpool\fP \fILV\fP \fILV\fP\fI_linear_striped_cache_raid\fP +.br +.RS 4 +.ad l +[ \fB-r\fP|\fB--readahead\fP \fBauto\fP|\fBnone\fP|\fINumber\fP ] +.ad b +.br +.ad l +[ \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--type\fP \fBthin\fP ] +.ad b +.br +.ad l +[ \fB--originname\fP \fILV\fP\fI_new\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadata\fP \fILV\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadatasize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB--poolmetadataspare\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--metadataprofile\fP \fIString\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Convert LV to type cache (infers --type cache). +.br +.P +\fBlvconvert\fP \fB-H\fP|\fB--cache\fP \fB--cachepool\fP \fILV\fP \fILV\fP\fI_linear_striped_thinpool_raid\fP +.br +.RS 4 +.ad l +[ \fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB-r\fP|\fB--readahead\fP \fBauto\fP|\fBnone\fP|\fINumber\fP ] +.ad b +.br +.ad l +[ \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB--type\fP \fBcache\fP ] +.ad b +.br +.ad l +[ \fB--cachemetadataformat\fP \fBauto\fP|\fB1\fP|\fB2\fP ] +.ad b +.br +.ad l +[ \fB--cachemode\fP \fBwritethrough\fP|\fBwriteback\fP|\fBpassthrough\fP ] +.ad b +.br +.ad l +[ \fB--cachepolicy\fP \fIString\fP ] +.ad b +.br +.ad l +[ \fB--cachesettings\fP \fIString\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadata\fP \fILV\fP ] +.ad b +.br +.ad l +[ \fB--poolmetadatasize\fP \fISize\fP[m|UNIT] ] +.ad b +.br +.ad l +[ \fB--poolmetadataspare\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--metadataprofile\fP \fIString\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Separate and delete the cache pool from a cache LV. +.br +.P +\fBlvconvert\fP \fB--uncache\fP \fILV\fP\fI_thinpool_cache\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Swap metadata LV in a thin pool or cache pool (for repair only). +.br +.P +\fBlvconvert\fP \fB--swapmetadata\fP \fB--poolmetadata\fP \fILV\fP \fILV\fP\fI_thinpool_cachepool\fP +.br +.RS 4 +.ad l +[ \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Merge LV that was split from a mirror (variant, use --mergemirrors). +.br +Merge thin LV into its origin LV (variant, use --mergethin). +.br +Merge COW snapshot LV into its origin (variant, use --mergesnapshot). +.br +.P +\fBlvconvert\fP \fB--merge\fP \fIVG\fP|\fILV\fP\fI_linear_striped_snapshot_thin_raid\fP|\fITag\fP ... +.br +.RS 4 +.ad l +[ \fB-i\fP|\fB--interval\fP \fINumber\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Separate a COW snapshot from its origin LV. +.br +.P +\fBlvconvert\fP \fB--splitsnapshot\fP \fILV\fP\fI_snapshot\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Combine a former COW snapshot (second arg) with a former +.br +origin LV (first arg) to reverse a splitsnapshot command. +.br +.P +\fBlvconvert\fP \fB--type\fP \fBsnapshot\fP \fILV\fP \fILV\fP\fI_linear\fP +.br +.RS 4 +.ad l +[ \fB-s\fP|\fB--snapshot\fP ] +.ad b +.br +.ad l +[ \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Combine a former COW snapshot (second arg) with a former +.br +origin LV (first arg) to reverse a splitsnapshot command. +.br +.P +\fBlvconvert\fP \fB-s\fP|\fB--snapshot\fP \fILV\fP \fILV\fP\fI_linear\fP +.br +.RS 4 +.ad l +[ \fB-c\fP|\fB--chunksize\fP \fISize\fP[k|UNIT] ] +.ad b +.br +.ad l +[ \fB-Z\fP|\fB--zero\fP \fBy\fP|\fBn\fP ] +.ad b +.br +.ad l +[ \fB--type\fP \fBsnapshot\fP ] +.ad b +.br +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +Poll LV to continue conversion (also see --startpoll). +.br +.P +\fBlvconvert\fP \fILV\fP\fI_mirror_raid\fP +.br +.RS 4 +[ COMMON_OPTIONS ] +.RE +.br + +-- + +.br + +.SH NOTES + +This previous command syntax would perform two different operations: +.br +\fBlvconvert --thinpool\fP \fILV1\fP \fB--poolmetadata\fP \fILV2\fP +.br +If LV1 was not a thin pool, the command would convert LV1 to +a thin pool, optionally using a specified LV for metadata. +But, if LV1 was already a thin pool, the command would swap +the current metadata LV with LV2 (for repair purposes.) + +In the same way, this previous command syntax would perform two different +operations: +.br +\fBlvconvert --cachepool\fP \fILV1\fP \fB--poolmetadata\fP \fILV2\fP +.br +If LV1 was not a cache pool, the command would convert LV1 to +a cache pool, optionally using a specified LV for metadata. +But, if LV1 was already a cache pool, the command would swap +the current metadata LV with LV2 (for repair purposes.) + +.SH EXAMPLES + +Convert a linear LV to a two-way mirror LV. +.br +.B lvconvert \-\-type mirror \-\-mirrors 1 vg/lvol1 + +Convert a linear LV to a two-way RAID1 LV. +.br +.B lvconvert \-\-type raid1 \-\-mirrors 1 vg/lvol1 + +Convert a mirror LV to use an in\-memory log. +.br +.B lvconvert \-\-mirrorlog core vg/lvol1 + +Convert a mirror LV to use a disk log. +.br +.B lvconvert \-\-mirrorlog disk vg/lvol1 + +Convert a mirror or raid1 LV to a linear LV. +.br +.B lvconvert --type linear vg/lvol1 + +Convert a mirror LV to a raid1 LV with the same number of images. +.br +.B lvconvert \-\-type raid1 vg/lvol1 + +Convert a linear LV to a two-way mirror LV, allocating new extents from specific +PV ranges. +.br +.B lvconvert \-\-mirrors 1 vg/lvol1 /dev/sda:0\-15 /dev/sdb:0\-15 + +Convert a mirror LV to a linear LV, freeing physical extents from a specific PV. +.br +.B lvconvert \-\-type linear vg/lvol1 /dev/sda + +Split one image from a mirror or raid1 LV, making it a new LV. +.br +.B lvconvert \-\-splitmirrors 1 \-\-name lv_split vg/lvol1 + +Split one image from a raid1 LV, and track changes made to the raid1 LV +while the split image remains detached. +.br +.B lvconvert \-\-splitmirrors 1 \-\-trackchanges vg/lvol1 + +Merge an image (that was previously created with \-\-splitmirrors and +\-\-trackchanges) back into the original raid1 LV. +.br +.B lvconvert \-\-mergemirrors vg/lvol1_rimage_1 + +Replace PV /dev/sdb1 with PV /dev/sdf1 in a raid1/4/5/6/10 LV. +.br +.B lvconvert \-\-replace /dev/sdb1 vg/lvol1 /dev/sdf1 + +Replace 3 PVs /dev/sd[b-d]1 with PVs /dev/sd[f-h]1 in a raid1 LV. +.br +.B lvconvert \-\-replace /dev/sdb1 \-\-replace /dev/sdc1 \-\-replace /dev/sdd1 +.RS +.B vg/lvol1 /dev/sd[fgh]1 +.RE + +Replace the maximum of 2 PVs /dev/sd[bc]1 with PVs /dev/sd[gh]1 in a raid6 LV. +.br +.B lvconvert \-\-replace /dev/sdb1 \-\-replace /dev/sdc1 vg/lvol1 /dev/sd[gh]1 + +Convert an LV into a thin LV in the specified thin pool. The existing LV +is used as an external read\-only origin for the new thin LV. +.br +.B lvconvert \-\-type thin \-\-thinpool vg/tpool1 vg/lvol1 + +Convert an LV into a thin LV in the specified thin pool. The existing LV +is used as an external read\-only origin for the new thin LV, and is +renamed "external". +.br +.B lvconvert \-\-type thin \-\-thinpool vg/tpool1 +.RS +.B \-\-originname external vg/lvol1 +.RE + +Convert an LV to a cache pool LV using another specified LV for cache pool +metadata. +.br +.B lvconvert \-\-type cache-pool \-\-poolmetadata vg/poolmeta1 vg/lvol1 + +Convert an LV to a cache LV using the specified cache pool and chunk size. +.br +.B lvconvert \-\-type cache \-\-cachepool vg/cpool1 \-c 128 vg/lvol1 + +Detach and keep the cache pool from a cache LV. +.br +.B lvconvert \-\-splitcache vg/lvol1 + +Detach and remove the cache pool from a cache LV. +.br +.B lvconvert \-\-uncache vg/lvol1 + +.SH SEE ALSO + +.BR lvm (8) +.BR lvm.conf (5) +.BR lvmconfig (8) + +.BR pvchange (8) +.BR pvck (8) +.BR pvcreate (8) +.BR pvdisplay (8) +.BR pvmove (8) +.BR pvremove (8) +.BR pvresize (8) +.BR pvs (8) +.BR pvscan (8) + +.BR vgcfgbackup (8) +.BR vgcfgrestore (8) +.BR vgchange (8) +.BR vgck (8) +.BR vgcreate (8) +.BR vgconvert (8) +.BR vgdisplay (8) +.BR vgexport (8) +.BR vgextend (8) +.BR vgimport (8) +.BR vgimportclone (8) +.BR vgmerge (8) +.BR vgmknodes (8) +.BR vgreduce (8) +.BR vgremove (8) +.BR vgrename (8) +.BR vgs (8) +.BR vgscan (8) +.BR vgsplit (8) + +.BR lvcreate (8) +.BR lvchange (8) +.BR lvconvert (8) +.BR lvdisplay (8) +.BR lvextend (8) +.BR lvreduce (8) +.BR lvremove (8) +.BR lvrename (8) +.BR lvresize (8) +.BR lvs (8) +.BR lvscan (8) + +.BR lvm2-activation-generator (8) +.BR blkdeactivate (8) +.BR lvmdump (8) + +.BR dmeventd (8) +.BR lvmetad (8) +.BR lvmpolld (8) +.BR lvmlockd (8) +.BR lvmlockctl (8) +.BR clvmd (8) +.BR cmirrord (8) +.BR lvmdbusd (8) + +.BR lvmsystemid (7) +.BR lvmreport (7) +.BR lvmraid (7) +.BR lvmthin (7) +.BR lvmcache (7) + |