lvm-args - Man Page

LVM command arguments reference

Description

This page provides a comprehensive list of all LVM command arguments and shows which commands accept each argument.

Arguments

--abort

Used by: lvpoll, pvmove

-a|--activate y|n|ay

Used by: lvchange, lvcreate, pvscan, vgchange

--activationmode partial|degraded|complete

Determines if LV activation is allowed when PVs are missing, e.g. because of a device failure. complete only allows LVs with no missing PVs to be activated, and is the most restrictive mode. degraded allows RAID LVs with missing PVs to be activated. (This does not include the "mirror" type, see "raid1" instead.) partial allows any LV with missing PVs to be activated, and should only be used for recovery or repair. For default, see lvm.conf(5) activation_mode. See lvmraid(7) for more information.
Used by: lvchange, vgchange

-A|--activevolumegroups

Only select active VGs. The VG is considered active if at least one of its LVs is active.
Used by: vgdisplay

--adddev PV

Add a device to the devices file.
Used by: lvmdevices

--addid String

Find the device with the given device_id and add it to the devices file.
Used by: lvmdevices

--addpvid String

Find a device with the PVID and add the device to the devices file.
Used by: lvmdevices

--addtag Tag

Adds a tag to a PV, VG or LV. This option can be repeated to add multiple tags at once. See lvm(8) for information about tags.
Used by: lvchange, lvcreate, pvchange, vgchange, vgcreate

--aligned

Use with --separator to align the output columns.
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

-a|--all

Used by: fullreport, lvdisplay, lvs, lvscan, pvchange, pvdisplay, pvs, vgdisplay, vgexport, vgimport, vgimportdevices, vgreduce, vgs

--alloc contiguous|cling|cling_by_tags|normal|anywhere|inherit

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 overridden on the command line. normal applies common sense rules such as not placing parallel stripes on the same PV. inherit applies the VG policy to an LV. contiguous requires new PEs to be placed adjacent to existing PEs. cling 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, anywhere 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 lvm(8) for more information about allocation.
Used by: lvchange, lvconvert, lvcreate, lvextend, lvresize, pvmove, vgchange, vgcreate, vgsplit

-x|--allocatable y|n

Enable or disable allocation of physical extents on this PV.
Used by: pvchange

-A|--allpvs

Used by: pvs, pvscan

--atomic

Makes a pvmove operation atomic, ensuring that all affected LVs are moved to the destination PV, or none are if the operation is aborted.
Used by: pvmove

--atversion String

Specify an LVM version in x.y.z format where x is the major version, the y is the minor version and z is the patchlevel (e.g. 2.2.106). When configuration is displayed, the configuration settings recognized at this LVM version will be considered only. This can be used to display a configuration that a certain LVM version understands and which does not contain any newer settings for which LVM would issue a warning message when checking the configuration.
Used by: config, dumpconfig, lvmconfig

--auto

This option is used when automatically importing devices for the root VG. The auto import is intended to be done once, on first boot, to create an initial system.devices file for the root VG. When this option is used, the vgimportdevices --rootvg command does nothing if system.devices exists, or the file auto-import-rootvg does not exist (both in the /etc/lvm/devices/ directory.)
Used by: vgimportdevices

--autoactivation String

Specify if autoactivation is being used from an event. This allows the command to apply settings that are specific to event activation, such as device scanning optimizations using pvs_online files created by event-based pvscans.
Used by: pvscan, vgchange

-A|--autobackup y|n

Specifies if metadata should be backed up automatically after a change. Enabling this is strongly advised! See vgcfgbackup(8) for more information.
Used by: lvchange, lvcreate, lvextend, lvpoll, lvreduce, lvremove, lvrename, lvresize, pvchange, pvmove, pvresize, vgchange, vgcreate, vgextend, vgmerge, vgreduce, vgrename, vgsplit

-b|--background

If the operation requires polling, this option causes the command to return before the operation is complete, and polling is done in the background.
Used by: lvconvert, pvmove

-n|--basevgname String

By default the snapshot VG will be renamed to the original name plus a numeric suffix to avoid duplicate naming (e.g. 'test_vg' would be renamed to 'test_vg1'). This option will override the base VG name that is used for all VG renames. If a VG already exists with the specified name a numeric suffix will be added (like the previous example) to make it unique.
Used by: vgimportclone

--binary

Use binary values "0" or "1" instead of descriptive literal values for columns that have exactly two valid values to report (not counting the "unknown" value which denotes that the value could not be determined).
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--bootloaderareasize Size[m|UNIT]

Reserve space for the bootloader between the LVM metadata area and the first PE. The bootloader area is reserved for bootloaders to embed their own data or metadata; LVM will not use it. The bootloader area begins where the first PE would otherwise be located. The first PE is moved out by the size of the bootloader area, and then moved out further if necessary to match the data alignment. The start of the bootloader area is always aligned, see also --dataalignment and --dataalignmentoffset. The bootloader area may be larger than requested due to the alignment, but it's never less than the requested size. To see the bootloader area start and size of an existing PV use pvs -o +pv_ba_start,pv_ba_size.
Used by: pvcreate, vgconvert

--cache

Used by: pvscan

-H|--cache

Specifies the command is handling a cache LV or cache pool. See --type cache and --type cache-pool. See lvmcache(7) for more information about LVM caching.
Used by: lvconvert, lvcreate

--cachedevice PV

The name of a device to use for a cache.
Used by: lvconvert, lvcreate

--cachemetadataformat auto|1|2

Specifies the cache metadata format used by cache target.
Used by: lvconvert, lvcreate

--cachemode writethrough|writeback|passthrough

Specifies when writes to a cache LV should be considered complete. writeback considers a write complete as soon as it is stored in the cache pool. writethrough 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 passthrough, 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 lvmcache(7) for more information.
Used by: lvchange, lvconvert, lvcreate

--cachepolicy String

Specifies the cache policy for a cache LV. See lvmcache(7) for more information.
Used by: lvchange, lvconvert, lvcreate

--cachepool LV

The name of a cache pool.
Used by: lvconvert, lvcreate

--cachesettings String

Specifies tunable kernel options for dm-cache or dm-writecache LVs. Use the form 'option=value' or 'option1=value option2=value', or repeat --cachesettings for each option being set. These settings override the default kernel behaviors which are usually adequate. To remove cachesettings and revert to the default kernel behaviors, use --cachesettings 'default' for dm-cache or an empty string --cachesettings '' for dm-writecache. See lvmcache(7) for more information.
Used by: lvchange, lvconvert, lvcreate

--cachesize Size[m|UNIT]

The size of cache to use.
Used by: lvconvert, lvcreate

--cachevol LV

The name of a cache volume.
Used by: lvconvert, lvcreate

--check

Checks the content of the devices file. Reports incorrect device names or PVIDs for entries.
Used by: lvmdevices

--checkcomplete

Check if all the devices used by a VG or LV are present, and print "complete" or "incomplete" for each listed VG or LV.  This option is used as a part of event-based autoactivation, so pvscan will do nothing if this option is set and event_activation=0 in the config settings.
Used by: pvscan

-c|--chunksize Size[k|UNIT]

The size of chunks in a snapshot, cache pool or thin pool. For snapshots, the value must be a power of 2 between 4 KiB and 512 KiB and the default value is 4. For a cache pool the value must be between 32 KiB and 1 GiB and the default value is 64. For a thin pool the value must be between 64 KiB and 1 GiB and the default value starts with 64 and scales up to fit the pool metadata size within 128 MiB, if the pool metadata size is not specified. The value must be a multiple of 64 KiB. See lvmthin(7) and lvmcache(7) for more information.
Used by: lvconvert, lvcreate

-c|--clustered y|n

This option was specific to clvm and is now replaced by the --shared option with lvmlockd(8).
Used by: vgcreate

-c|--colon

Generate colon separated output for easier parsing in scripts or programs.
Used by: lvdisplay, pvdisplay, vgdisplay

-C|--columns

Display output in columns.
Used by: lvdisplay, pvdisplay, vgdisplay

--commandprofile String

The command profile to use for command configuration. See lvm.conf(5) for more information about profiles.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--compression y|n

Controls whether compression is enabled or disabled for VDO volume. See lvmvdo(7) for more information about VDO usage.
Used by: lvchange, lvconvert, lvcreate

--config String

Config settings for the command. These override lvm.conf(5) settings. The String arg uses the same format as lvm.conf(5), or may use section/field syntax. See lvm.conf(5) for more information about config.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--configreport log|vg|lv|pv|pvseg|seg

See lvmreport(7).
Used by: fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

-C|--contiguous y|n

Sets or resets the contiguous allocation policy for LVs. Default is no contiguous allocation based on a next free principle. It is only possible to change a non-contiguous allocation policy to contiguous if all of the allocated physical extents in the LV are already contiguous.
Used by: lvchange, lvcreate

--dataalignment Size[k|UNIT]

Align the start of a PV data area with a multiple of this number. To see the location of the first Physical Extent (PE) of an existing PV, use pvs -o +pe_start. In addition, it may be shifted by an alignment offset, see --dataalignmentoffset. Also specify an appropriate PE size when creating a VG.
Used by: pvcreate, vgcreate, vgextend

--dataalignmentoffset Size[k|UNIT]

Shift the start of the PV data area by this additional offset.
Used by: pvcreate, vgcreate, vgextend

-d|--debug

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).
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--deduplication y|n

Controls whether deduplication is enabled or disabled for VDO volume. See lvmvdo(7) for more information about VDO usage.
Used by: lvchange, lvconvert, lvcreate

--deldev String

Remove a device from the devices file. When used alone, --deldev specifies a device name. When used with --deviceidtype, --deldev specifies a device id.
Used by: lvmdevices

--delid String

Remove the device with the specified device ID from the devices file.
Used by: lvmdevices

--delnotfound

Remove devices file entries with no matching device.
Used by: lvmdevices

--delpvid String

Remove a device with the PVID from the devices file.
Used by: lvmdevices

--deltag Tag

Deletes a tag from a PV, VG or LV. This option can be repeated to delete multiple tags at once. See lvm(8) for information about tags.
Used by: lvchange, pvchange, vgchange

--detachprofile

Detaches a metadata profile from a VG or LV. See lvm.conf(5) for more information about profiles.
Used by: lvchange, vgchange

--deviceidtype String

The type of device ID to use for the device. If the specified type is available for the device, then it will override the default type that lvm would use.
Used by: lvmdevices

--devices PV

Restricts the devices that are visible and accessible to the command. Devices not listed will appear to be missing. This option can be repeated, or accepts a comma separated list of devices. This overrides the devices file.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--devicesfile String

A file listing devices that LVM should use. The file must exist in /etc/lvm/devices/ and is managed with the lvmdevices(8) command. This overrides the lvm.conf(5) devices/devicesfile and devices/use_devicesfile settings.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--discards passdown|nopassdown|ignore

Specifies how the device-mapper thin pool layer in the kernel should handle discards. ignore causes the thin pool to ignore discards. nopassdown causes the thin pool to process discards itself to allow reuse of unneeded extents in the thin pool. passdown causes the thin pool to process discards itself (like nopassdown) and pass the discards to the underlying device. See lvmthin(7) for more information.
Used by: lvchange, lvconvert, lvcreate

--driverloaded y|n

If set to no, the command will not attempt to use device-mapper. For testing and debugging.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--dump headers|metadata|metadata_all|metadata_search

Dump headers and metadata from a PV for debugging and repair. Option values include: headers to print and check LVM headers, metadata to print or save the current text metadata, metadata_all to list or save all versions of metadata, metadata_search to list or save all versions of metadata, searching standard locations in case of damaged headers, metadata_area to save an entire text metadata area to a file.
Used by: pvck

--errorwhenfull y|n

Specifies thin pool behavior when data space is exhausted. When yes, device-mapper will immediately return an error when a thin pool is full and an I/O request requires space. When no, device-mapper will queue these I/O requests for a period of time to allow the thin pool to be extended. Errors are returned if no space is available after the timeout. (Also see "dm_thin_pool" kernel module option no_space_timeout.) See lvmthin(7) for more information.
Used by: lvchange, lvconvert, lvcreate

-e|--exported

Only show PVs belonging to exported VGs.
Used by: pvscan

-l|--extents Number[PERCENT]

Used by: lvcreate, lvextend, lvreduce, lvresize

-f|--file String

Used by: config, dumpconfig, lvmconfig, pvck, vgcfgbackup, vgcfgrestore

--force

Force metadata restore even with thin pool LVs. Use with extreme caution. Most changes to thin metadata cannot be reverted. You may lose data if you restore metadata that does not match the thin pool kernel metadata precisely.
Used by: vgcfgrestore

-f|--force

Override various checks, confirmations and protections. Use with extreme caution.
Used by: lvchange, lvconvert, lvextend, lvmdevices, lvreduce, lvremove, lvresize, pvchange, pvcreate, pvremove, vgchange, vgconvert, vgcreate, vgextend, vgimport, vgreduce, vgremove, vgrename

--foreign

Report/display foreign VGs that would otherwise be skipped. See lvmsystemid(7) for more information about foreign VGs.
Used by: fullreport, lvdisplay, lvs, pvdisplay, pvs, vgcfgbackup, vgdisplay, vgimportdevices, vgs

--fs String

Control file system resizing when resizing an LV. checksize: Check the fs size and reduce the LV if the fs is not using the reduced space (fs reduce is not needed.) If the reduced space is used by the fs, then do not resize the fs or LV, and return an error. (checksize only applies when reducing, and does nothing for extend.) resize: Resize the fs by calling the fs-specific resize command. This may also include mounting, unmounting, or running fsck. See --fsmode to control mounting behavior, and --nofsck to disable fsck. resize_fsadm: Use the old method of calling fsadm to handle the fs (deprecated.) Warning: this option does not prevent lvreduce from destroying file systems that are unmounted (or mounted if prompts are skipped.) ignore: Resize the LV without checking for or handling a file system. Warning: using ignore when reducing the LV size may destroy the file system.

Note: If resizing an LV without a file system and the new LV size matches the existing size, the command returns a non-zero status code (failure). However, if a file system resize is also requested along with the LV resize, and the sizes already match, the command returns a zero status code (success). This occurs because the external commands called to resize the file system return success even if the new and old file system sizes are identical. LVM follows the command status code behavior in this scenario.
Used by: lvextend, lvreduce, lvresize

--fsmode String

Control file system mounting behavior for fs resize. manage: Mount or unmount the fs as needed to resize the fs, and attempt to restore the original mount state at the end. nochange: Do not mount or unmount the fs. If mounting or unmounting is required to resize the fs, then do not resize the fs or the LV and fail the command. offline: Unmount the fs if it is mounted, and resize the fs while it is unmounted. If mounting is required to resize the fs, then do not resize the fs or the LV and fail the command.
Used by: lvextend, lvreduce, lvresize

-f|--full

Used by: lvmsar

--handlemissingpvs

Allows a polling operation to continue when PVs are missing, e.g. for repairs due to faulty devices.
Used by: lvpoll

--headings none|abbrev|full|0|1|2

Type of headings to use in report output. none or 0: No headings. abbrev or 1: Column name abbreviations. full or 2: Full column names.
Used by: fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

-h|--help

Display help text.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

-H|--history

Include historical LVs in the output. (This has no effect unless LVs were removed while lvm.conf(5) metadata/record_lvs_history was enabled.
Used by: lvdisplay, lvs

-K|--ignoreactivationskip

Ignore the "activation skip" LV flag during activation to allow LVs with the flag set to be activated.
Used by: lvchange, lvcreate, vgchange

--ignoreadvanced

Exclude advanced configuration settings from the output.
Used by: config, dumpconfig, lvmconfig

--ignorelocal

Ignore the local section. The local section should be defined in the lvmlocal.conf file, and should contain config settings specific to the local host which should not be copied to other hosts.
Used by: config, dumpconfig, lvmconfig

--ignorelockingfailure

Allows a command to continue with read-only metadata operations after locking failures.
Used by: fullreport, lvchange, lvdisplay, lvs, lvscan, pvdisplay, pvs, pvscan, vgcfgbackup, vgchange, vgdisplay, vgmknodes, vgs, vgscan

--ignoremonitoring

Do not interact with dmeventd unless --monitor is specified. Do not use this if dmeventd is already monitoring a device.
Used by: lvchange, lvcreate, vgchange

--ignoreunsupported

Exclude unsupported configuration settings from the output. These settings are either used for debugging and development purposes only or their support is not yet complete and they are not meant to be used in production. The current and diff types include unsupported settings in their output by default, all the other types ignore unsupported settings.
Used by: config, dumpconfig, lvmconfig

-i|--import

Import exported VGs. Otherwise VGs that have been exported will not be changed (nor will their associated PVs).
Used by: vgimportclone

--importdevices

Add devices to the devices file.
Used by: vgimportclone

--integritysettings String

Specifies tunable kernel options for dm-integrity. See lvmraid(7) for more information.
Used by: lvchange, lvconvert, lvcreate

-i|--interval [+]Number

Report progress at regular intervals. With a '+' prefix, the first check is delayed by the given number of seconds, allowing background operations to start before polling begins.
Used by: lvconvert, lvpoll, pvmove

--journal String

Record information in the systemd journal. This information is in addition to information enabled by the lvm.conf log/journal setting. command: record information about the command. output: record the default command output. debug: record full command debugging.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--labelsector Number

By default the PV is labelled with an LVM2 identifier in its second sector (sector 1). This lets you use a different sector near the start of the disk (between 0 and 3 inclusive - see LABEL_SCAN_SECTORS in the source). Use with care.
Used by: pvck, pvcreate, vgconvert, vgcreate, vgextend

-l|--list

Used by: config, dumpconfig, lvmconfig, vgcfgrestore, vgmerge

--listids PV

Print a list of device IDs available for the device.
Used by: lvmdevices

--listlvs

Print a list of LVs that use the device.
Used by: pvscan

--listvg

Print the VG that uses the device.
Used by: pvscan

--lockopt String

Used to pass options for special cases to lvmlockd. See lvmlockd(8) for more information.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--lockstart

Start the lockspace of a shared VG in lvmlockd. lvmlockd locks becomes available for the VG, allowing LVM to use the VG. See lvmlockd(8) for more information.
Used by: vgchange

--lockstop

Stop the lockspace of a shared VG in lvmlockd. lvmlockd locks become unavailable for the VG, preventing LVM from using the VG. See lvmlockd(8) for more information.
Used by: vgchange

--locktype sanlock|dlm|none

Used by: vgchange, vgcreate

-l|--logicalvolume Number

Sets the maximum number of LVs allowed in a VG.
Used by: vgchange

--logonly

Suppress command report and display only log report.
Used by: fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--longhelp

Display long help text.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

-l|--lvmpartition

Only report PVs.
Used by: lvmdiskscan

-j|--major Number

Used by: lvchange, lvcreate, pvscan

--majoritypvs

Change the VG system ID if the majority of PVs in the VG are present (one more than half).
Used by: vgchange

-m|--maps

Used by: lvdisplay, pvdisplay

-l|--maxlogicalvolumes Number

Sets the maximum number of LVs allowed in a VG.
Used by: vgcreate, vgsplit

-p|--maxphysicalvolumes Number

Sets the maximum number of PVs that can belong to the VG. The value 0 removes any limitation. For large numbers of PVs, also see options --pvmetadatacopies, and --vgmetadatacopies for improving performance.
Used by: vgchange, vgcreate, vgsplit

--[raid]maxrecoveryrate Size[k|UNIT]

Sets the maximum recovery rate for a RAID LV.  The rate value is an amount of data per second for each device in the array. Setting the rate to 0 means it will be unbounded. See lvmraid(7) for more information.
Used by: lvchange, lvcreate

--merge

An alias for --mergethin, --mergemirrors, or --mergesnapshot, depending on the type of LV.
Used by: lvconvert

--mergedconfig

When the command is run with --config and/or --commandprofile (or using LVM_COMMAND_PROFILE environment variable), --profile, or --metadataprofile, merge all the contents of the "config cascade" before displaying it. Without merging, only the configuration at the front of the cascade is displayed. See lvm.conf(5) for more information about config.
Used by: config, dumpconfig, lvmconfig

--mergemirrors

Merge LV images that were split from a raid1 LV. See --splitmirrors with --trackchanges.
Used by: lvconvert

--mergesnapshot

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.
Used by: lvconvert

--mergethin

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 lvmthin(7) for more information.
Used by: lvconvert

--metadataignore y|n

Specifies the metadataignore property of a PV. If yes, metadata areas on the PV are ignored, and lvm will not store metadata in the metadata areas of the PV. If no, lvm will store metadata on the PV.
Used by: pvchange, pvcreate, vgextend

--metadataprofile String

The metadata profile to use for command configuration. See lvm.conf(5) for more information about profiles.
Used by: config, dumpconfig, lvchange, lvconvert, lvcreate, lvmconfig, vgchange, vgcreate

--metadatasize Size[m|UNIT]

The approximate amount of space used for each VG metadata area. The size may be rounded.
Used by: pvcreate, vgconvert, vgcreate, vgextend

-M|--metadatatype lvm2

Specifies the type of on-disk metadata to use. lvm2 (or just 2) is the current, standard format. lvm1 (or just 1) is no longer used.
Used by: pvcreate, vgcfgrestore, vgconvert, vgcreate, vgextend, vgsplit

--minor Number

Used by: lvchange, lvcreate, pvscan

--[raid]minrecoveryrate Size[k|UNIT]

Sets the minimum recovery rate for a RAID LV.  The rate value is an amount of data per second for each device in the array. Setting the rate to 0 means it will be unbounded. See lvmraid(7) for more information.
Used by: lvchange, lvcreate

--mirrorlog core|disk

Specifies the type of mirror log for LVs with the "mirror" type (does not apply to the "raid1" type.) disk is a persistent log and requires a small amount of storage space, usually on a separate device from the data being mirrored. core 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. mirrored is a persistent log that is itself mirrored, but should be avoided. Instead, use the raid1 type for log redundancy.
Used by: lvconvert, lvcreate

-m|--mirrors Number

Used by: lvconvert, lvcreate, lvextend

--mirrorsonly

Only remove missing PVs from mirror LVs.
Used by: vgreduce

--mknodes

Also checks the LVM special files in /dev that are needed for active LVs and creates any missing ones and removes unused ones. See also additional --refresh option for use in udev environment.
Used by: vgscan

--monitor y|n

Start (yes) or stop (no) monitoring an LV with dmeventd. dmeventd monitors kernel events for an LV, and performs automated maintenance for the LV in response to specific events. See dmeventd(8) for more information.
Used by: lvchange, lvcreate, vgchange

-n|--name String

Used by: lvconvert, lvcreate, pvmove, vgsplit

--nameprefixes

Add an "LVM2_" prefix plus the field name to the output. Useful with --noheadings to produce a list of field=value pairs that can be used to set environment variables (for example, in udev rules).
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

-n|--nofsck

Do not perform fsck when resizing the file system with --resizefs.
Used by: lvextend, lvreduce, lvresize

--noheadings

Suppress the headings line that is normally the first line of output. Useful if grepping the output.
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--nohints

Do not use the hints file to locate devices for PVs. A command may read more devices to find PVs when hints are not used. The command will still perform standard hint file invalidation where appropriate.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--nohistory

Do not record history of LVs being removed. This has no effect unless the configuration setting metadata/record_lvs_history is enabled.
Used by: lvremove

--nolocking

Disable locking. Use with caution, concurrent commands may produce incorrect results.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--norestorefile

In conjunction with --uuid, this allows a uuid to be specified without also requiring that a backup of the metadata be provided.
Used by: pvcreate

--nosuffix

Suppress the suffix on output sizes. Use with --units (except h and H) if processing the output.
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--nosync

Causes the creation of mirror, raid1, raid4, raid5 and raid10 to skip the initial synchronization. In case of mirror, raid1 and raid10, any data written afterwards will be mirrored, but the original contents will not be copied. In case of raid4 and raid5, no parity blocks will be written, though any data written afterwards will cause parity blocks to be stored. This is useful for skipping a potentially long and resource intensive initial sync of an empty mirror/raid1/raid4/raid5 and raid10 LV. This option is not valid for raid6, because raid6 relies on proper parity (P and Q Syndromes) being created during initial synchronization in order to reconstruct proper user data in case of device failures. raid0 and raid0_meta do not provide any data copies or parity support and thus do not support initial synchronization.
Used by: lvcreate, lvextend, lvresize

--notifydbus

Send a notification to D-Bus. The command will exit with an error if LVM is not built with support for D-Bus notification, or if the notify_dbus config setting is disabled.
Used by: vgscan

--noudevsync

Disables udev synchronization. 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.
Used by: lvchange, lvconvert, lvcreate, lvextend, lvreduce, lvremove, lvrename, lvresize, pvmove, pvscan, vgchange, vgremove

-n|--novolumegroup

Only show PVs not belonging to any VG.
Used by: pvscan

-o|--options String

Comma-separated, ordered list of fields to display in columns. String arg syntax is: [+|-|#]Field1[,Field2 ...] The prefix + will append the specified fields to the default fields, - will remove the specified fields from the default fields, and # will compact specified fields (removing them when empty for all rows.) Use -o help to view the list of all available fields. Use separate lists of fields to add, remove or compact by repeating the -o option: -o+field1,field2 -o-field3,field4 -o#field5. These lists are evaluated from left to right. Use field name lv_all to view all LV fields, vg_all all VG fields, pv_all all PV fields, seg_all all LV segment fields, and pvseg_all all PV segment fields. See the lvm.conf(5) report section for more config options. See lvmreport(7) for more information about reporting.
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--originname LV

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.
Used by: lvconvert

-P|--partial

Commands will do their best to activate LVs with missing PV extents. Missing extents may be replaced with error or zero segments according to the  missing_stripe_filler setting. Metadata may not be changed with this option.
Used by: lvchange, vgchange

-p|--permission rw|r

Set access permission to read only r or read and write rw.
Used by: lvchange, lvcreate

--persist String

Persistent Reservation operation. start: register local key and acquire reservation. stop: unregister local key, releasing reservation. remove: preempt and abort another key. clear: remove reservation and keys. check: check if started. autostart: start if the VG autostart flag is set. lvmlocal.conf pr_key or host_id must be configured to use PR. For local VGs, Write Exclusive (WE) is used, and for shared VGs Write Exclusive, all registrants (WEAR) is used. Use --setpersist to automate and/or require PR.
Used by: vgchange, vgcreate, vgexport, vgimport

-M|--persistent y|n

When yes, makes the specified minor number persistent.
Used by: lvchange, lvcreate

-s|--physicalextentsize Size[m|UNIT]

Used by: vgchange, vgcreate

--poll y|n

When yes, start the background transformation of an LV. An incomplete transformation, e.g. pvmove or lvconvert interrupted by reboot or crash, can be restarted from the last checkpoint with --poll y. When no, background transformation of an LV will not occur, and the transformation will not complete. It may not be appropriate to immediately poll an LV after activation, in which case --poll n can be used to defer polling until a later --poll y command.
Used by: lvchange, vgchange

--polloperation pvmove|convert|merge|merge_thin

The command to perform from lvmpolld.
Used by: lvpoll

--pooldatavdo y|n

Use VDO type volume for pool data volume.
Used by: lvconvert, lvcreate

--poolmetadata LV

The name of an LV to use for storing pool metadata.
Used by: lvconvert

--poolmetadatasize Size[m|UNIT]

Used by: lvconvert, lvcreate, lvextend, lvresize

--poolmetadataspare y|n

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.
Used by: lvconvert, lvcreate, vgmerge, vgsplit

--profile String

An alias for --commandprofile or --metadataprofile, depending on the command.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--pvmetadatacopies 0|1|2

The number of metadata areas to set aside on a PV for storing VG metadata. When 2, one copy of the VG metadata is stored at the front of the PV and a second copy is stored at the end. When 1, one copy of the VG metadata is stored at the front of the PV. When 0, no copies of the VG metadata are stored on the given PV. This may be useful in VGs containing many PVs (this places limitations on the ability to use vgsplit later.)
Used by: pvck, pvcreate, vgchange, vgconvert, vgcreate, vgextend

-q|--quiet

Suppress output and log messages. Overrides --debug and --verbose. Repeat once to also suppress any prompts with answer 'no'.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--raidintegrity y|n

Enable or disable data integrity checksums for raid images.
Used by: lvconvert, lvcreate

--raidintegrityblocksize Number

The block size to use for dm-integrity on raid images. The integrity block size should usually match the device logical block size, or the file system block size. It may be less than the file system block size, but not less than the device logical block size. Possible values: 512, 1024, 2048, 4096.
Used by: lvconvert, lvcreate

--raidintegritymode String

Use a journal (default) or bitmap for keeping integrity checksums consistent in case of a crash. The bitmap areas are recalculated after a crash, so corruption in those areas would not be detected. A journal does not have this problem. The journal mode doubles writes to storage, but can improve performance for scattered writes packed into a single journal write. bitmap mode can in theory achieve full write throughput of the device, but would not benefit from the potential scattered write optimization.
Used by: lvconvert, lvcreate

-r|--readahead auto|none|Number

Sets read ahead sector count of an LV. auto is the default which allows the kernel to choose a suitable value automatically. none is equivalent to zero.
Used by: lvchange, lvconvert, lvcreate

--readonly

Prevent the command from making changes, including activation and metadata updates.  (See --permission r for read only LVs.)
Used by: fullreport, lvchange, lvdisplay, lvmdiskscan, lvs, lvscan, pvdisplay, pvs, vgcfgbackup, vgchange, vgdisplay, vgs

--rebuild PV

Selects a PV to rebuild in a raid LV. Multiple PVs can be rebuilt by repeating this option. Use this option in place of --resync or --syncaction repair when the PVs with corrupted data are known, and their data should be reconstructed rather than reconstructing default (rotating) data. See lvmraid(7) for more information.
Used by: lvchange

--refresh

Used by: lvchange, lvmdevices, vgchange, vgmknodes, vgscan

-R|--regionsize Size[m|UNIT]

Size of each raid or mirror synchronization region. lvm.conf(5) activation/raid_region_size can be used to configure a default.
Used by: lvconvert, lvcreate

--removekey String

A persistent reservation key to remove.
Used by: vgchange

--removemissing

Removes all missing PVs from the VG, if there are no LVs allocated on them. This resumes normal operation of the VG (new LVs may again be created, changed and so on). If this is not possible because LVs are referencing the missing PVs, this option can be combined with --force to have the command remove any partial LVs. In this case, any LVs and dependent snapshots that were partly on the missing disks are removed completely, including those parts on disks that are still present. If LVs spanned several disks, including ones that are lost, salvaging some data first may be possible by activating LVs in partial mode.
Used by: vgreduce

--repair

Used by: lvconvert, pvck

--repairtype pv_header|metadata|label_header

Repair headers and metadata on a PV. See command description.
Used by: pvck

--replace PV

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 lvmraid(7) for more information.
Used by: lvconvert

--reportformat basic|json|json_std

Overrides current output format for reports which is defined globally by the report/output_format setting in lvm.conf(5). basic is the original format with columns and rows. If there is more than one report per command, each report is prefixed with the report name for identification. json produces report output in JSON format. json_std produces report output in JSON format which is more compliant with JSON standard. See lvmreport(7) for more information.
Used by: devtypes, fullreport, lastlog, lvchange, lvcreate, lvdisplay, lvextend, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvcreate, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, vgcfgbackup, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportdevices, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan

-x|--resizeable y|n

Enables or disables the addition or removal of PVs to/from a VG (by vgextend/vgreduce).
Used by: vgchange

-r|--resizefs

Resize the fs using the fs-specific resize command (See: resize2fs(8), xfs_growfs(8), btrfs(8)). May include mounting, unmounting, or running fsck. See --fsmode to control mounting behavior, and --nofsck to disable fsck. See --fs for more options (--resizefs is equivalent to --fs resize.)
Used by: lvextend, lvreduce, lvresize

--restorefile String

In conjunction with --uuid, this reads the file (produced by vgcfgbackup), extracts the location and size of the data on the PV, and ensures that the metadata produced by the program is consistent with the contents of the file, i.e. the physical extents will be in the same place and not be overwritten by new metadata. This provides a mechanism to upgrade the metadata format or to add/remove metadata areas. Use with care.
Used by: pvcreate

--restoremissing

Add a PV back into a VG after the PV was missing and then returned, e.g. due to a transient failure. The PV is not reinitialized.
Used by: vgextend

--resync

Initiates mirror synchronization. Synchronization generally happens automatically, but this option forces it to run. Also see --rebuild to synchronize a specific PV. During synchronization, data is read from the primary mirror device and copied to the others. This can take considerable time, during which the LV is without a complete redundant copy of the data. See lvmraid(7) for more information.
Used by: lvchange

--rootvg

Import devices used for the root VG.
Used by: vgimportdevices

--rows

Output columns as rows.
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--segments

Used by: lvdisplay, lvs, pvdisplay, pvs

-S|--select String

Select objects for processing and reporting based on specified criteria. The criteria syntax is described by --select help and lvmreport(7). For reporting commands, one row is displayed for each object matching the criteria. See --options help for selectable object fields. Rows can be displayed with an additional "selected" field (-o selected) showing 1 if the row matches the selection and 0 otherwise. For non-reporting commands which process LVM entities, the selection is used to choose items to process.
Used by: devtypes, fullreport, lastlog, lvchange, lvdisplay, lvremove, lvs, pvchange, pvdisplay, pvs, vgchange, vgdisplay, vgexport, vgimport, vgimportdevices, vgremove, vgs

--separator String

String to use to separate each column. Useful if grepping the output.
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

-k|--setactivationskip y|n

Persistently sets (yes) or clears (no) the "activation skip" flag on an LV. An LV with this flag set is not activated unless the --ignoreactivationskip option is used by the activation command. This flag is set by default on new thin snapshot LVs. The flag is not applied to deactivation. The current value of the flag is indicated in the lvs lv_attr bits.
Used by: lvchange, lvconvert, lvcreate

--setautoactivation y|n

Set the autoactivation property on a VG or LV. Display the property with vgs or lvs "-o autoactivation". When the autoactivation property is disabled, the VG or LV will not be activated by a command doing autoactivation (vgchange, lvchange, or pvscan using -aay.) If autoactivation is disabled on a VG, no LVs will be autoactivated in that VG, and the LV autoactivation property has no effect. If autoactivation is enabled on a VG, autoactivation can be disabled for individual LVs.
Used by: lvchange, lvcreate, vgchange, vgcreate

--setlockargs String

Add or remove lock_args settings for a shared VG. The lock_args determine lock manager behavior for the VG. These settings are only allowed for lock_type sanlock. persist: use persistent reservations for lock recovery. lvmlockd will preempt-abort the persistent reservation of a failed lock owner so that the lock can be acquired. notimeout: use locks that do not time out when the owner fails. In this case, a lock owned by a failed host can only be acquired using the persist feature. nopersist: do not use the persist feature. timeout: do not use the notimeout feature. The default behavior with no settings configured is: nopersist and timeout.
Used by: vgchange, vgcreate

--setpersist String

Used by: vgchange, vgcreate

--setphysicalvolumesize Size[m|UNIT]

Overrides the automatically detected size of the PV. Use with care, or prior to reducing the physical size of the device.
Used by: pvcreate, pvresize

--settings String

Specifies command specific settings in "Key = Value" form. Combine multiple settings in quotes, or repeat the settings option for each.
Used by: pvck

--shared

Used by: fullreport, lvdisplay, lvs, pvdisplay, pvs, vgcreate, vgdisplay, vgs

-s|--short

Used by: pvdisplay, pvscan, vgdisplay

--showdeprecated

Include deprecated configuration settings in the output. These settings are deprecated after a certain version. If a concrete version is specified with --atversion, deprecated settings are automatically included if the specified version is lower than the version in which the settings were deprecated. The current and diff types include deprecated settings in their output by default, all the other types ignore deprecated settings.
Used by: config, dumpconfig, lvmconfig

--showunsupported

Include unsupported configuration settings in the output. These settings are either used for debugging or development purposes only, or their support is not yet complete and they are not meant to be used in production. The current and diff types include unsupported settings in their output by default, all the other types ignore unsupported settings.
Used by: config, dumpconfig, lvmconfig

--sinceversion String

Specify an LVM version in x.y.z format where x is the major version, the y is the minor version and z is the patchlevel (e.g. 2.2.106). This option is currently applicable only with --typeconfig new to display all configuration settings introduced since given version.
Used by: config, dumpconfig, lvmconfig

-L|--size Size[m|UNIT]

Used by: lvcreate, lvextend, lvreduce, lvresize

-s|--snapshot

Used by: lvconvert, lvcreate

-O|--sort String

Comma-separated ordered list of columns to sort by. Replaces the default selection. Precede any column with - for a reverse sort on that column.
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--splitcache

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.
Used by: lvconvert

--splitmirrors Number

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. If --name is specified, then the images are permanently split from the original LV and changes are not tracked.
Used by: lvconvert

--splitsnapshot

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.
Used by: lvconvert

--startpoll

Start polling an LV to continue processing a conversion.
Used by: lvconvert

-s|--stdin

Used by: lvmsar

--stripes Number

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.
Used by: lvconvert

-i|--stripes Number

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 change existing allocated space, but only applies to space being allocated by the command. When creating a RAID 4/5/6 LV, this number does not include the extra devices that are required for parity. The largest number depends on the RAID type (raid0: 64, raid10: 32, raid4/5: 63, raid6: 62), and when unspecified, the default depends on the RAID type (raid0: 2, raid10: 2, raid4/5: 3, raid6: 5.) To stripe a new raid LV across all PVs by default, see lvm.conf(5) allocation/raid_stripe_all_devices.
Used by: lvcreate, lvextend, lvresize

-I|--stripesize Size[k|UNIT]

The amount of data that is written to one device before moving to the next in a striped LV.
Used by: lvconvert, lvcreate, lvextend, lvresize

--swapmetadata

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: cache_dump(8), cache_repair(8), cache_restore(8), thin_dump(8), thin_repair(8), thin_restore(8).
Used by: lvconvert

--[raid]syncaction check|repair

Initiate different types of RAID synchronization. This causes the RAID LV to read all data and parity blocks in the array and check for discrepancies (mismatches between mirrors or incorrect parity values). check will count but not correct discrepancies. repair will correct discrepancies. Mind that these synchronization actions are transient and have to be restarted after a system failure/reboot or a configuration change to the RaidLV. See lvs(8) for reporting discrepancies found or repaired.
Used by: lvchange

--sysinit

Indicates that vgchange/lvchange is being invoked from early system initialisation scripts (e.g. rc.sysinit or an initrd), before writable filesystems are available. As such, some functionality needs to be disabled and this option acts as a shortcut which selects an appropriate set of options. Currently, this is equivalent to using --ignorelockingfailure, --ignoremonitoring, --poll n, and setting env var LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES. vgchange/lvchange skip autoactivation, and defer to pvscan autoactivation.
Used by: lvchange, vgchange

--systemid String

Used by: vgchange, vgcreate

-t|--test

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.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

-T|--thin

Specifies the command is handling a thin LV or thin pool. See --type thin, --type thin-pool, and --virtualsize. See lvmthin(7) for more information about LVM thin provisioning.
Used by: lvconvert, lvcreate

--thinpool LV

The name of a thin pool LV.
Used by: lvconvert, lvcreate

--trackchanges

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 is a temporary state that allows the read-only detached image to be merged efficiently back into the raid1 LV later. Only the regions with changed data are resynchronized during merge. While a raid1 LV is tracking changes, operations on it are limited to merging the split image (see --mergemirrors) or permanently splitting the image (see --splitmirrors with --name.
Used by: lvconvert

--type linear|striped|snapshot|raid|mirror|thin|thin-pool|vdo|vdo-pool|cache|cache-pool|writecache

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 (raid<N>, mirror, striped, linear) see lvmraid(7). For thin provisioning (thin, thin-pool) see lvmthin(7). For performance caching (cache, cache-pool) see lvmcache(7). For copy-on-write snapshots (snapshot) see usage definitions. For VDO (vdo) see lvmvdo(7). 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, --vdo). Use inferred types with care because it can lead to unexpected results.
Used by: lvconvert, lvcreate, lvextend, lvresize

--typeconfig current|default|diff|full|list|missing|new|profilable|profilable-command|profilable-metadata

current prints the config settings that would be applied to an lvm command (assuming the command does not override them on the command line.) This includes: settings that have been modified in lvm config files, settings that get their default values from config files, and default settings that have been uncommented in config files. default prints all settings with their default values. Changes made in lvm config files are not reflected in the output. Some settings get their default values internally, and these settings are printed as comments. Other settings get their default values from config files, and these settings are not printed as comments. diff prints only config settings that have been modified from their default values in config files (the difference between current and default.) full prints every setting uncommented and set to the current value, i.e. how it would be used by an lvm command. This includes settings modified in config files, settings that usually get defaults internally, and settings that get defaults from config files. list prints all config names without values. missing prints settings that are missing from the lvm config files. A missing setting that usually gets its default from config files is printed uncommented and set to the internal default. Settings that get their default internally and are not set in config files are printed commented with the internal default. new prints config settings that have been added since the lvm version specified by --sinceversion. They are printed with their default values. profilable prints settings with their default values that can be set from a profile. profilable-command prints settings with their default values that can be set from a command profile. profilable-metadata prints settings with their default values that can be set from a metadata profile. Also see lvm.conf(5).
Used by: config, dumpconfig, lvmconfig

--udevoutput

Command output is modified to be imported from a udev rule.
Used by: pvscan

--unbuffered

Produce output immediately without sorting or aligning the columns properly.
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--uncache

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.
Used by: lvconvert

--unconfigured

Internal option used for generating config file during build.
Used by: config, dumpconfig, lvmconfig

--units [Number]r|R|h|H|b|B|s|S|k|K|m|M|g|G|t|T|p|P|e|E

All sizes are output in these units: human-(r)eadable with '<' rounding indicator, (h)uman-readable, (b)ytes, (s)ectors, (k)ilobytes, (m)egabytes, (g)igabytes, (t)erabytes, (p)etabytes, (e)xabytes. Capitalise to use multiples of 1000 (S.I.) instead of 1024. Custom units can be specified, e.g. --units 3M.
Used by: fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--unquoted

When used with --nameprefixes, output values in the field=value pairs are not quoted.
Used by: devtypes, fullreport, lvdisplay, lvs, pvdisplay, pvs, vgdisplay, vgs

--update

Update the content of the devices file.
Used by: lvmdevices

--updatemetadata

Update VG metadata to correct problems. If VG metadata was updated while a PV was missing, and the PV reappears with an old version of metadata, then this option (or any other command that writes metadata) will update the metadata on the previously missing PV. If a PV was removed from a VG while it was missing, and the PV reappears, using this option will clear the outdated metadata from the previously missing PV. If metadata text is damaged on one PV, using this option will replace the damaged metadata text. For more severe damage, e.g. with headers, see pvck(8).
Used by: vgck

--usepolicies

Perform an operation according to the policy configured in lvm.conf(5) or a profile.
Used by: lvconvert, lvextend

-u|--uuid

Used by: pvchange, pvscan, vgchange

-u|--uuid String

Specify a UUID for the device. Without this option, a random UUID is generated. This option is needed before restoring a backup of LVM metadata onto a replacement device; see vgcfgrestore(8). As such, use of --restorefile is compulsory unless the --norestorefile is used. All PVs must have unique UUIDs, and LVM will prevent certain operations if multiple devices are seen with the same UUID. See vgimportclone(8) for more information.
Used by: pvcreate

--validate

Validate current configuration used and exit with appropriate return code. The validation is done only for the configuration at the front of the "config cascade". To validate the whole merged configuration tree, also use --mergedconfig. The validation is done even if lvm.conf(5) config/checks is disabled.
Used by: config, dumpconfig, lvmconfig

--valuesonly

When printing config settings, print only values without keys.
Used by: config, dumpconfig, lvmconfig

--vdo

Specifies the command is handling VDO LV. See --type vdo. See lvmvdo(7) for more information about VDO usage.
Used by: lvcreate

--vdopool LV

The name of a VDO pool LV. See lvmvdo(7) for more information about VDO usage.
Used by: lvconvert, lvcreate

--vdosettings String

Specifies tunable VDO options for VDO LVs. Use the form 'option=value' or 'option1=value option2=value', or repeat --vdosettings for each option being set. These settings override the default VDO behaviors. To remove vdosettings and revert to the default VDO behaviors, use --vdosettings 'default'. See lvmvdo(7) for more information.
Used by: lvchange, lvconvert, lvcreate

-v|--verbose

Set verbose level. Repeat from 1 to 4 times to increase the detail of messages sent to stdout and stderr.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--version

Display version information.
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

--vgmetadatacopies all|unmanaged|Number

Number of copies of the VG metadata that are kept. VG metadata is kept in VG metadata areas on PVs in the VG, i.e. reserved space at the start and/or end of the PVs. Keeping a copy of the VG metadata on every PV can reduce performance in VGs containing a large number of PVs. When this number is set to a non-zero value, LVM will automatically choose PVs on which to store metadata, using the metadataignore flags on PVs to achieve the specified number. The number can also be replaced with special string values: unmanaged causes LVM to not automatically manage the PV metadataignore flags. all causes LVM to first clear the metadataignore flags on all PVs, and then to become unmanaged.
Used by: vgchange, vgcreate, vgsplit

--vgonline

The first command to see a complete VG will report it uniquely. Other commands to see the complete VG will report it differently.
Used by: pvscan

-V|--virtualsize Size[m|UNIT]

The virtual size of a new thin LV. See lvmthin(7) for more information about LVM thin provisioning. Using virtual size (-V) and actual size (-L) together creates a sparse LV. lvm.conf(5) global/sparse_segtype_default determines the default segment type used to create a sparse LV. Anything written to a sparse LV will be returned when reading from it. Reading from other areas of the LV will return blocks of zeros. When using a snapshot to create a sparse LV, a hidden virtual device is created using the zero target, and the LV has the suffix _vorigin. Snapshots are less efficient than thin provisioning when creating large sparse LVs (GiB).
Used by: lvconvert, lvcreate

-W|--wipesignatures y|n

Controls detection and subsequent wiping of signatures on new LVs. There is a prompt for each signature detected to confirm its wiping (unless --yes is used to override confirmations.) When not specified, signatures are wiped whenever zeroing is done (see --zero). This behaviour can be configured with lvm.conf(5) allocation/wipe_signatures_when_zeroing_new_lvs. If blkid wiping is used (lvm.conf(5) allocation/use_blkid_wiping) and LVM is compiled with blkid wiping support, then the blkid(8) library is used to detect the signatures (use blkid -k to list the signatures that are recognized). Otherwise, native LVM code is used to detect signatures (only MD RAID, swap and LUKS signatures are detected in this case.) The LV is not wiped if the read only flag is set.
Used by: lvconvert, lvcreate

--withcomments

Display a full comment for each configuration node. For deprecated settings, also display comments about deprecation.
Used by: config, dumpconfig, lvmconfig

--withgeneralpreamble

Include general config file preamble.
Used by: config, dumpconfig, lvmconfig

--withlocalpreamble

Include local config file preamble.
Used by: config, dumpconfig, lvmconfig

--withspaces

Where appropriate, add more spaces in output for better readability.
Used by: config, dumpconfig, lvmconfig

--withsummary

Display a one line comment for each configuration node.
Used by: config, dumpconfig, lvmconfig

--withversions

Also display a comment containing the version of introduction for each configuration node. If the setting is deprecated, also display the version since which it is deprecated.
Used by: config, dumpconfig, lvmconfig

--[raid]writebehind Number

The maximum number of outstanding writes that are allowed to devices in a RAID1 LV that is marked write-mostly. Once this value is exceeded, writes become synchronous (i.e. all writes to the constituent devices must complete before the array signals the write has completed). Setting the value to zero clears the preference and allows the system to choose the value arbitrarily.
Used by: lvchange

--[raid]writemostly PV[:t|n|y]

Mark a device in a RAID1 LV as write-mostly.  All reads to these drives will be avoided unless absolutely necessary. This keeps the number of I/Os to the drive to a minimum. The default behavior is to set the write-mostly attribute for the specified PV. It is also possible to remove the write-mostly flag by adding the suffix :n at the end of the PV name, or to toggle the value with the suffix :t. Repeat this option to change the attribute on multiple PVs.
Used by: lvchange

-y|--yes

Do not prompt for confirmation interactively but always assume the answer yes. Use with extreme caution. (For automatic no, see -qq.)
Used by: config, devtypes, dumpconfig, formats, fullreport, help, lastlog, lvchange, lvconvert, lvcreate, lvdisplay, lvextend, lvmchange, lvmconfig, lvmdevices, lvmdiskscan, lvmsadc, lvmsar, lvpoll, lvreduce, lvremove, lvrename, lvresize, lvs, lvscan, pvchange, pvck, pvcreate, pvdata, pvdisplay, pvmove, pvremove, pvresize, pvs, pvscan, segtypes, systemid, tags, version, vgcfgbackup, vgcfgrestore, vgchange, vgck, vgconvert, vgcreate, vgdisplay, vgexport, vgextend, vgimport, vgimportclone, vgimportdevices, vgmerge, vgmknodes, vgreduce, vgremove, vgrename, vgs, vgscan, vgsplit

-Z|--zero y|n

Used by: lvchange, lvconvert, lvcreate, pvcreate, vgcreate, vgextend

See Also

lvm(8), lvm-index(7), lvm-categories(7)

Info

LVM TOOLS 2.03.39(2) (2026-03-13) Red Hat, Inc.