mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
1893 lines
40 KiB
Plaintext
1893 lines
40 KiB
Plaintext
.TH LVCONVERT 8 "LVM TOOLS #VERSION#" "Red Hat, Inc."
|
|
.SH NAME
|
|
lvconvert - Change logical volume layout
|
|
.
|
|
.SH SYNOPSIS
|
|
\fBlvconvert\fP \fIoption_args\fP \fIposition_args\fP
|
|
.br
|
|
[ \fIoption_args\fP ]
|
|
.br
|
|
[ \fIposition_args\fP ]
|
|
.br
|
|
.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
|
|
.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
|
|
|
|
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.
|
|
|
|
Sub LVs can be displayed with the command:
|
|
|
|
.B lvs -a
|
|
|
|
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.
|
|
|
|
Striped raid types are
|
|
\fBraid0/raid0_meta\fP,
|
|
\fBraid5\fP (an alias for raid5_ls),
|
|
\fBraid6\fP (an alias for raid6_zr) and
|
|
\fBraid10\fP (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 and
|
|
data blocks for performance reasons, thus avoiding contention on a single
|
|
device. Specific arrangements of parity and data blocks (layouts) can be
|
|
used to optimize I/O performance, or to convert between raid levels. See
|
|
\fBlvmraid\fP(7) for more information.
|
|
|
|
Layouts of raid5 rotating parity blocks can be: 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. Layouts of raid6 are: zero-restart (raid6_zr with alias
|
|
raid6), next-restart (raid6_nr), and next-continue (raid6_nc).
|
|
|
|
Layouts including _n allow for conversion between raid levels (raid5_n to
|
|
raid6 or raid5_n to striped/raid0/raid0_meta). 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.
|
|
.SH USAGE
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
Replace failed PVs in a raid or mirror LV.
|
|
.br
|
|
Repair a thin pool.
|
|
.br
|
|
Repair a cache pool.
|
|
.br
|
|
.P
|
|
\fBlvconvert\fP \fB--repair\fP \fILV\fP\fI_thinpool_cache_cachepool_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
|
|
.ad l
|
|
[ \fB--poolmetadataspare\fP \fBy\fP|\fBn\fP ]
|
|
.ad b
|
|
.br
|
|
[ COMMON_OPTIONS ]
|
|
.RE
|
|
.br
|
|
.RS 4
|
|
[ \fIPV\fP ... ]
|
|
.RE
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
|
|
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
|
|
.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, but
|
|
should be avoided. Instead, use the raid1 type for log redundancy.
|
|
.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
|
|
.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
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
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
|
|
-
|
|
|
|
.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 lvm-fullreport (8)
|
|
.BR lvm-lvpoll (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)
|