VGCHANGE(8) System Manager's Manual VGCHANGE(8)
NAME
vgchange — Change volume group attributes
SYNOPSIS
vgchange option_args position_args
[ option_args ]
[ position_args ]
-a|--activate y|n|ay
--activationmode partial|degraded|complete
--addtag Tag
--alloc contiguous|cling|cling_by_tags|normal|anywhere|inherit
--autoactivation String
-A|--autobackup y|n
--commandprofile String
--config String
-d|--debug
--deltag Tag
--detachprofile
--devices PV
--devicesfile String
--driverloaded y|n
-f|--force
-h|--help
-K|--ignoreactivationskip
--ignorelockingfailure
--ignoremonitoring
--journal String
--lockopt String
--lockstart
--lockstop
--locktype sanlock|dlm|none
-l|--logicalvolume Number
--longhelp
--majoritypvs
-p|--maxphysicalvolumes Number
--metadataprofile String
--monitor y|n
--nohints
--nolocking
--noudevsync
-P|--partial
-s|--physicalextentsize Size[m|UNIT]
--poll y|n
--profile String
--pvmetadatacopies 0|1|2
-q|--quiet
--readonly
--refresh
--reportformat basic|json|json_std
-x|--resizeable y|n
-S|--select String
--setautoactivation y|n
--sysinit
--systemid String
-t|--test
-u|--uuid
-v|--verbose
--version
--[vg]metadatacopies all|unmanaged|Number
-y|--yes
DESCRIPTION
vgchange changes VG attributes, changes LV activation in the kernel, and
includes other utilities for VG maintenance.
USAGE
Change a general VG attribute.
For options listed in parentheses, any one is
required, after which the others are optional.
vgchange
( -l|--logicalvolume Number
-p|--maxphysicalvolumes Number
-u|--uuid
-s|--physicalextentsize Size[m|UNIT]
-x|--resizeable y|n
--addtag Tag
--deltag Tag
--alloc contiguous|cling|cling_by_tags|normal|anywhere|inherit
--pvmetadatacopies 0|1|2
--[vg]metadatacopies all|unmanaged|Number
--profile String
--detachprofile
--metadataprofile String
--setautoactivation y|n )
[ -A|--autobackup y|n ]
[ -S|--select String ]
[ -f|--force ]
[ --poll y|n ]
[ --ignoremonitoring ]
[ --noudevsync ]
[ --reportformat basic|json|json_std ]
[ COMMON_OPTIONS ]
[ VG|Tag|Select ... ]
—
Start or stop monitoring LVs from dmeventd.
vgchange --monitor y|n
[ -A|--autobackup y|n ]
[ -S|--select String ]
[ -f|--force ]
[ --sysinit ]
[ --ignorelockingfailure ]
[ --poll y|n ]
[ --ignoremonitoring ]
[ --noudevsync ]
[ --reportformat basic|json|json_std ]
[ COMMON_OPTIONS ]
[ VG|Tag|Select ... ]
—
Start or stop processing LV conversions.
vgchange --poll y|n
[ -A|--autobackup y|n ]
[ -S|--select String ]
[ -f|--force ]
[ --ignorelockingfailure ]
[ --ignoremonitoring ]
[ --noudevsync ]
[ --reportformat basic|json|json_std ]
[ COMMON_OPTIONS ]
[ VG|Tag|Select ... ]
—
Activate or deactivate LVs.
vgchange -a|--activate y|n|ay
[ -K|--ignoreactivationskip ]
[ -P|--partial ]
[ -A|--autobackup y|n ]
[ -S|--select String ]
[ -f|--force ]
[ --activationmode partial|degraded|complete ]
[ --sysinit ]
[ --readonly ]
[ --ignorelockingfailure ]
[ --monitor y|n ]
[ --poll y|n ]
[ --autoactivation String ]
[ --ignoremonitoring ]
[ --noudevsync ]
[ --reportformat basic|json|json_std ]
[ COMMON_OPTIONS ]
[ VG|Tag|Select ... ]
—
Reactivate LVs using the latest metadata.
vgchange --refresh
[ -A|--autobackup y|n ]
[ -S|--select String ]
[ -f|--force ]
[ --sysinit ]
[ --ignorelockingfailure ]
[ --poll y|n ]
[ --ignoremonitoring ]
[ --noudevsync ]
[ --reportformat basic|json|json_std ]
[ COMMON_OPTIONS ]
[ VG|Tag|Select ... ]
—
Change the system ID of a VG.
vgchange --systemid String VG|Tag|Select
[ -S|--select String ]
[ --majoritypvs ]
[ COMMON_OPTIONS ]
—
Start the lockspace of a shared VG in lvmlockd.
vgchange --lockstart
[ -S|--select String ]
[ COMMON_OPTIONS ]
[ VG|Tag|Select ... ]
—
Stop the lockspace of a shared VG in lvmlockd.
vgchange --lockstop
[ -S|--select String ]
[ COMMON_OPTIONS ]
[ VG|Tag|Select ... ]
—
Change the lock type for a shared VG.
vgchange --locktype sanlock|dlm|none VG
[ COMMON_OPTIONS ]
—
Common options for lvm:
[ -d|--debug ]
[ -h|--help ]
[ -q|--quiet ]
[ -t|--test ]
[ -v|--verbose ]
[ -y|--yes ]
[ --commandprofile String ]
[ --config String ]
[ --devices PV ]
[ --devicesfile String ]
[ --driverloaded y|n ]
[ --journal String ]
[ --lockopt String ]
[ --longhelp ]
[ --nohints ]
[ --nolocking ]
[ --profile String ]
[ --version ]
OPTIONS
-a|--activate y|n|ay
Change the active state of LVs. An active LV can be used through
a block device, allowing data on the LV to be accessed. y makes
LVs active, or available. n makes LVs inactive, or unavailable.
The block device for the LV is added or removed from the system
using device-mapper in the kernel. A symbolic link /dev/VG-
Name/LVName pointing to the device node is also added/removed.
All software and scripts should access the device through the
symbolic link and present this as the name of the device. The
location and name of the underlying device node may depend on the
distribution, configuration (e.g. udev), or release version. ay
specifies autoactivation, which is used by system-generated acti-
vation commands. By default, LVs are autoactivated. An autoacti-
vation property can be set on a VG or LV to disable autoactiva-
tion, see --setautoactivation y|n in vgchange, lvchange, vgcre-
ate, and lvcreate. Display the property with vgs or lvs "-o au-
toactivation". The lvm.conf(5) auto_activation_volume_list in-
cludes names of VGs or LVs that should be autoactivated, and any-
thing not listed is not autoactivated. When auto_activation_vol-
ume_list is undefined (the default), it has no effect. If au-
to_activation_volume_list is defined and empty, no LVs are au-
toactivated. Items included by auto_activation_volume_list will
not be autoactivated if the autoactivation property has been dis-
abled. See lvmlockd(8) for more information about activation op-
tions ey and sy for shared VGs.
--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.) par-
tial 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 informa-
tion.
--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.
--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 alloca-
tion policy which can be changed with vgchange/lvchange, or over-
ridden on the command line. normal applies common sense rules
such as not placing parallel stripes on the same PV. inherit ap-
plies the VG policy to an LV. contiguous requires new PEs 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.
--autoactivation String
Specify if autoactivation is being used from an event. This al-
lows the command to apply settings that are specific to event ac-
tivation, such as device scanning optimizations using pvs_online
files created by event-based pvscans.
-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.
--commandprofile String
The command profile to use for command configuration. See
lvm.conf(5) for more information about profiles.
--config String
Config settings for the command. These override lvm.conf(5) set-
tings. The String arg uses the same format as lvm.conf(5), or
may use section/field syntax. See lvm.conf(5) for more informa-
tion about config.
-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).
--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.
--detachprofile
Detaches a metadata profile from a VG or LV. See lvm.conf(5) for
more information about profiles.
--devices PV
Restricts the devices that are visible and accessible to the com-
mand. 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.
--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) com-
mand. This overrides the lvm.conf(5) devices/devicesfile and de-
vices/use_devicesfile settings.
--driverloaded y|n
If set to no, the command will not attempt to use device-mapper.
For testing and debugging.
-f|--force ...
Override various checks, confirmations and protections. Use with
extreme caution.
-h|--help
Display help text.
-K|--ignoreactivationskip
Ignore the "activation skip" LV flag during activation to allow
LVs with the flag set to be activated.
--ignorelockingfailure
Allows a command to continue with read-only metadata operations
after locking failures.
--ignoremonitoring
Do not interact with dmeventd unless --monitor is specified. Do
not use this if dmeventd is already monitoring a device.
--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.
--lockopt String
Used to pass options for special cases to lvmlockd. See lvm-
lockd(8) for more information.
--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.
--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.
--locktype sanlock|dlm|none
Change the VG lock type to or from a shared lock type used with
lvmlockd. See lvmlockd(8) for more information.
-l|--logicalvolume Number
Sets the maximum number of LVs allowed in a VG.
--longhelp
Display long help text.
--majoritypvs
Change the VG system ID if the majority of PVs in the VG are
present (one more than half).
-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 im-
proving performance.
--metadataprofile String
The metadata profile to use for command configuration. See
lvm.conf(5) for more information about profiles.
--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.
--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.
--nolocking
Disable locking. Use with caution, concurrent commands may pro-
duce incorrect results.
--noudevsync
Disables udev synchronization. The process will not wait for no-
tification from udev. It will continue irrespective of any possi-
ble udev processing in the background. Only use this if udev is
not running or has rules that ignore the devices LVM creates.
-P|--partial
Commands will do their best to activate LVs with missing PV ex-
tents. Missing extents may be replaced with error or zero seg-
ments according to the missing_stripe_filler setting. Metadata
may not be changed with this option.
-s|--physicalextentsize Size[m|UNIT]
Sets the physical extent size of PVs in the VG. The value must
be either a power of 2 of at least 1 sector (where the sector
size is the largest sector size of the PVs currently used in the
VG), or at least 128 KiB. Once this value has been set, it is
difficult to change without recreating the VG, unless no extents
need moving. Before increasing the physical extent size, you
might need to use lvresize, pvresize and/or pvmove so that every-
thing fits. For example, every contiguous range of extents used
in a LV must start and end on an extent boundary.
--poll y|n
When yes, start the background transformation of an LV. An in-
complete 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.
--profile String
An alias for --commandprofile or --metadataprofile, depending on
the command.
--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 limi-
tations on the ability to use vgsplit later.)
-q|--quiet ...
Suppress output and log messages. Overrides --debug and --ver-
bose. Repeat once to also suppress any prompts with answer 'no'.
--readonly
Prevent the command from making changes, including activation and
metadata updates. (See --permission r for read only LVs.)
--refresh
If the LV is active, reload its metadata. In an environment
where udev is used to manage the /dev content, usage of this op-
tion is highly recommended. This is because refresh also regener-
ates udev events for an LV based on which existing udev rules are
applied to set the /dev content and permissions. Also, this op-
eration may be useful if something has gone wrong, or if some
form of manual LV sharing is being used.
--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). ba-
sic 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.
-x|--resizeable y|n
Enables or disables the addition or removal of PVs to/from a VG
(by vgextend/vgreduce).
-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 selec-
table 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.
--setautoactivation y|n
Set the autoactivation property on a VG or LV. Display the prop-
erty with vgs or lvs "-o autoactivation". When the autoactiva-
tion property is disabled, the VG or LV will not be activated by
a command doing autoactivation (vgchange, lvchange, or pvscan us-
ing -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.
--sysinit
Indicates that vgchange/lvchange is being invoked from early sys-
tem 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 se-
lects an appropriate set of options. Currently, this is equiva-
lent to using --ignorelockingfailure, --ignoremonitoring, --poll
n, and setting env var LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES.
vgchange/lvchange skip autoactivation, and defer to pvscan au-
toactivation.
--systemid String
Changes the system ID of the VG. Using this option requires cau-
tion because the VG may become foreign to the host running the
command, leaving the host unable to access it. See lvmsys-
temid(7) for more information.
-t|--test
Run in test mode. Commands will not update metadata. This is im-
plemented by disabling all metadata writing but nevertheless re-
turning 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.
-u|--uuid
Generate new random UUID for specified VGs.
-v|--verbose ...
Set verbose level. Repeat from 1 to 4 times to increase the de-
tail of messages sent to stdout and stderr.
--version
Display version information.
--[vg]metadatacopies 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 meta-
data, using the metadataignore flags on PVs to achieve the speci-
fied 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 meta-
dataignore flags on all PVs, and then to become unmanaged.
-y|--yes
Do not prompt for confirmation interactively but always assume
the answer yes. Use with extreme caution. (For automatic no, see
-qq.)
VARIABLES
VG Volume Group name. See lvm(8) for valid names.
Tag Tag name. See lvm(8) for information about tag names and using
tags in place of a VG, LV or PV.
Select Select indicates that a required positional parameter can be
omitted if the --select option is used. No arg appears in this
position.
String See the option description for information about the string con-
tent.
Size[UNIT]
Size is an input number that accepts an optional unit. Input
units are always treated as base two values, regardless of capi-
talization, e.g. 'k' and 'K' both refer to 1024. The default in-
put unit is specified by letter, followed by |UNIT. UNIT repre-
sents other possible input units: b|B is bytes, s|S is sectors of
512 bytes, k|K is KiB, m|M is MiB, g|G is GiB, t|T is TiB, p|P is
PiB, e|E is EiB. (This should not be confused with the output
control --units, where capital letters mean multiple of 1000.)
ENVIRONMENT VARIABLES
See lvm(8) for information about environment variables used by lvm. For
example, LVM_VG_NAME can generally be substituted for a required VG pa-
rameter.
NOTES
If vgchange recognizes COW snapshot LVs that were dropped because they
ran out of space, it displays a message informing the administrator that
the snapshots should be removed.
EXAMPLES
Activate all LVs in all VGs on all existing devices.
vgchange -a y
Change the maximum number of LVs for an inactive VG.
vgchange -l 128 vg00
SEE ALSO
lvm(8), lvm.conf(5), lvmconfig(8), lvmdevices(8),
pvchange(8), pvck(8), pvcreate(8), pvdisplay(8), pvmove(8), pvremove(8),
pvresize(8), pvs(8), pvscan(8),
vgcfgbackup(8), vgcfgrestore(8), vgchange(8), vgck(8), vgcreate(8),
vgconvert(8), vgdisplay(8), vgexport(8), vgextend(8), vgimport(8),
vgimportclone(8), vgimportdevices(8), vgmerge(8), vgmknodes(8),
vgreduce(8), vgremove(8), vgrename(8), vgs(8), vgscan(8), vgsplit(8),
lvcreate(8), lvchange(8), lvconvert(8), lvdisplay(8), lvextend(8),
lvreduce(8), lvremove(8), lvrename(8), lvresize(8), lvs(8), lvscan(8),
lvm-fullreport(8), lvm-lvpoll(8), blkdeactivate(8), lvmdump(8),
dmeventd(8), lvmpolld(8), lvmlockd(8), lvmlockctl(8), cmirrord(8),
lvmdbusd(8), fsadm(8),
lvmsystemid(7), lvmreport(7), lvmcache(7), lvmraid(7), lvmthin(7),
lvmvdo(7), lvmautoactivation(7)
Red Hat, Inc. LVM TOOLS 2.03.31(2) (2025-02-27) VGCHANGE(8)
Generated by dwww version 1.16 on Tue Dec 16 04:58:25 CET 2025.