.TH LVCHANGE 8 "LVM TOOLS #VERSION#" "Sistina Software UK" \" -*- nroff -*- .SH NAME lvchange \(em change attributes of a logical volume .SH SYNOPSIS .B lvchange .RB [ \-\-addtag .IR Tag ] .RB [ \-A | \-\-autobackup .RI { y | n }] .RB [ \-a | \-\-activate .RI [ a | e | s | l ]{ y | n }] .RB [ \-\-activationmode .RI { complete | degraded | partial }] .RB [ \-k | \-\-setactivationskip .RI { y | n }] .RB [ \-K | \-\-ignoreactivationskip ] .RB [ \-\-alloc .IR AllocationPolicy ] .RB [ \-\-cachepolicy .IR policy ] .RB [ \-\-cachesettings .IR key=value ] .RB [ \-\-commandprofile .IR ProfileName ] .RB [ \-C | \-\-contiguous .RI { y | n }] .RB [ \-d | \-\-debug ] .RB [ \-\-degraded ] .RB [ \-\-deltag .IR Tag ] .RB [ \-\-detachprofile ] .RB [ \-\-discards .RI { ignore | nopassdown | passdown }] .RB [ \-\-errorwhenfull .RI { y | n }] .RB [ \-\-resync ] .RB [ \-h | \-? | \-\-help ] .RB [ \-\-ignorelockingfailure ] .RB [ \-\-ignoremonitoring ] .RB [ \-\-ignoreskippedcluster ] .RB [ \-\-monitor .RI { y | n }] .RB [ \-\-poll .RI { y | n }] .RB [ \-\-[raid]maxrecoveryrate .IR Rate ] .RB [ \-\-[raid]minrecoveryrate .IR Rate ] .RB [ \-\-[raid]syncaction .RI { check | repair }] .RB [ \-\-[raid]writebehind .IR IOCount ] .RB [ \-\-[raid]writemostly .IR PhysicalVolume [ : { y | n | t }]] .RB [ \-\-sysinit ] .RB [ \-\-noudevsync ] .RB [ \-\-metadataprofile .IR ProfileName ] .RB [ \-M | \-\-persistent .RI { y | n } .RB [ \-\-minor .IR minor ] .RB [ \-\-major .IR major ]] .RB [ \-P | \-\-partial ] .RB [ \-p | \-\-permission .RI { r | rw }] .RB [ \-r | \-\-readahead .RI { ReadAheadSectors | auto | none }] .RB [ \-\-refresh ] .RB [ \-S | \-\-select .IR Selection ] .RB [ \-t | \-\-test ] .RB [ \-v | \-\-verbose ] .RB [ \-Z | \-\-zero .RI { y | n }] .RI [ LogicalVolumePath ...] .SH DESCRIPTION lvchange allows you to change the attributes of a logical volume including making them known to the kernel ready for use. .SH OPTIONS See \fBlvm\fP(8) for common options. .TP .BR \-a ", " \-\-activate " [" \fIa | \fIe | \fIs | \fIl ]{ \fIy | \fIn } Controls the availability of the logical volumes for use. Communicates with the kernel device-mapper driver via libdevmapper to activate (\-ay) or deactivate (\-an) the logical volumes. .IP Activation of a logical volume creates a symbolic link /dev/VolumeGroupName/LogicalVolumeName pointing to the device node. This link is removed on deactivation. All software and scripts should access the device through this 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 and configuration (e.g. udev) and might change from release to release. .IP If autoactivation option is used (\-aay), the logical volume is activated only if it matches an item in the activation/auto_activation_volume_list set in lvm.conf. If this list is not set, then all volumes are considered for activation. The \-aay option should be also used during system boot so it's possible to select which volumes to activate using the activation/auto_activation_volume_list setting. .IP In a clustered VG, clvmd is used for activation, and the following options are possible: With \-aey, clvmd activates the LV in exclusive mode (with an exclusive lock), allowing a single node to activate the LV. With \-asy, clvmd activates the LV in shared mode (with a shared lock), allowing multiple nodes to activate the LV concurrently. If the LV type prohibits shared access, such as an LV with a snapshot, the 's' option is ignored and an exclusive lock is used. With \-ay (no mode specified), clvmd activates the LV in shared mode if the LV type allows concurrent access, such as a linear LV. Otherwise, clvmd activates the LV in exclusive mode. With \-aey, \-asy, and \-ay, clvmd attempts to activate the LV on all nodes. If exclusive mode is used, then only one of the nodes will be successful. With \-an, clvmd attempts to deactivate the LV on all nodes. With \-aly, clvmd activates the LV only on the local node, and \-aln deactivates only on the local node. If the LV type allows concurrent access, then shared mode is used, otherwise exclusive. LVs with snapshots are always activated exclusively because they can only be used on one node at once. For local VGs, \-ay, \-aey, and \-asy are all equivalent. .TP .BR \-\-activationmode " {" \fIcomplete | \fIdegraded | \fIpartial } The activation mode determines whether logical volumes are allowed to activate when there are physical volumes missing (e.g. due to a device failure). \fIcomplete\fP is the most restrictive; allowing only those logical volumes to be activated that are not affected by the missing PVs. \fIdegraded\fP allows RAID logical volumes to be activated even if they have PVs missing. (Note that the "\fImirror\fP" segment type is not considered a RAID logical volume. The "\fIraid1\fP" segment type should be used instead.) Finally, \fIpartial\fP allows any logical volume to be activated even if portions are missing due to a missing or failed PV. This last option should only be used when performing recovery or repair operations. \fIdegraded\fP is the default mode. To change it, modify .B activation_mode in .BR lvm.conf (5). .TP .BR \-k ", " \-\-setactivationskip " {" \fIy | \fIn } Controls whether Logical Volumes are persistently flagged to be skipped during activation. By default, thin snapshot volumes are flagged for activation skip. To activate such volumes, an extra \fB\-K/\-\-ignoreactivationskip\fP option must be used. The flag is not applied during deactivation. To see whether the flag is attached, use \fBlvs\fP command where the state of the flag is reported within \fBlv_attr\fP bits. .TP .BR \-K ", " \-\-ignoreactivationskip Ignore the flag to skip Logical Volumes during activation. .TP .BR \-\-cachepolicy " " policy ", " \-\-cachesettings " " key=value Only applicable to cached LVs; see also \fBlvmcache(7)\fP. Sets the cache policy and its associated tunable settings. In most use-cases, default values should be adequate. .TP .BR \-C ", " \-\-contiguous " {" \fIy | \fIn } Tries to set or reset the contiguous allocation policy for logical volumes. It's only possible to change a non-contiguous logical volume's allocation policy to contiguous, if all of the allocated physical extents are already contiguous. .TP .BR \-\-detachprofile Detach any metadata configuration profiles attached to given Logical Volumes. See \fBlvm.conf\fP(5) for more information about \fBmetadata profiles\fP. .TP .BR \-\-discards " {" \fIignore | \fInopassdown | \fIpassdown } Set this to \fIignore\fP to ignore any discards received by a thin pool Logical Volume. Set to \fInopassdown\fP to process such discards within the thin pool itself and allow the no-longer-needed extents to be overwritten by new data. Set to \fIpassdown\fP (the default) to process them both within the thin pool itself and to pass them down the underlying device. .TP .BR \-\-errorwhenfull " {" \fIy | \fIn } Sets thin pool behavior when data space is exhaused. See .BR lvcreate (8) for information. .TP .B \-\-resync Forces the complete resynchronization of a mirror. In normal circumstances you should not need this option because synchronization happens automatically. Data is read from the primary mirror device and copied to the others, so this can take a considerable amount of time - and during this time you are without a complete redundant copy of your data. .TP .B \-\-metadataprofile " " \fIProfileName Uses and attaches ProfileName configuration profile to the logical volume metadata. Whenever the logical volume is processed next time, the profile is automatically applied. If the volume group has another profile attached, the logical volume profile is preferred. See \fBlvm.conf\fP(5) for more information about \fBmetadata profiles\fP. .TP .B \-\-minor \fIminor Set the minor number. .TP .B \-\-major \fImajor Sets the major number. This option is supported only on older systems (kernel version 2.4) and is ignored on modern Linux systems where major numbers are dynamically assigned. .TP .BR \-\-monitor " {" \fIy | \fIn } Start or stop monitoring a mirrored or snapshot logical volume with dmeventd, if it is installed. If a device used by a monitored mirror reports an I/O error, the failure is handled according to \fBmirror_image_fault_policy\fP and \fBmirror_log_fault_policy\fP set in \fBlvm.conf\fP. .TP .BR \-\-poll " {" \fIy | \fIn } Without polling a logical volume's backgrounded transformation process will never complete. If there is an incomplete pvmove or lvconvert (for example, on rebooting after a crash), use \fB\-\-poll y\fP to restart the process from its last checkpoint. However, it may not be appropriate to immediately poll a logical volume when it is activated, use \fB\-\-poll n\fP to defer and then \fB\-\-poll y\fP to restart the process. .TP .IR \fB\-\-[raid]maxrecoveryrate " " \fIRate [ bBsSkKmMgG ] Sets the maximum recovery rate for a RAID logical volume. \fIRate\fP is specified as an amount per second for each device in the array. If no suffix is given, then KiB/sec/device is assumed. Setting the recovery rate to 0 means it will be unbounded. .TP .IR \fB\-\-[raid]minrecoveryrate " " \fIRate [ bBsSkKmMgG ] Sets the minimum recovery rate for a RAID logical volume. \fIRate\fP is specified as an amount per second for each device in the array. If no suffix is given, then KiB/sec/device is assumed. Setting the recovery rate to 0 means it will be unbounded. .TP .BR \-\-[raid]syncaction " {" \fIcheck | \fIrepair } This argument is used to initiate various RAID synchronization operations. The \fIcheck\fP and \fIrepair\fP options provide a way to check the integrity of a RAID logical volume (often referred to as "scrubbing"). These options cause the RAID logical volume to read all of the data and parity blocks in the array and check for any discrepancies (e.g. mismatches between mirrors or incorrect parity values). If \fIcheck\fP is used, the discrepancies will be counted but not repaired. If \fIrepair\fP is used, the discrepancies will be corrected as they are encountered. The 'lvs' command can be used to show the number of discrepancies found or repaired. .TP .BR \-\-[raid]writebehind " " \fIIOCount Specify the maximum number of outstanding writes that are allowed to devices in a RAID1 logical volume that are marked as \fIwrite-mostly\fP. 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. .TP .IR \fB\-\-[raid]writemostly " " PhysicalVolume [ : { y | n | t }] Mark a device in a RAID1 logical volume as \fIwrite-mostly\fP. 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 physical volume in the logical volume. It is possible to also remove the write-mostly flag by appending a "\fI:n\fP" to the physical volume or to toggle the value by specifying "\fI:t\fP". The \fB\-\-writemostly\fP argument can be specified more than one time in a single command; making it possible to toggle the write-mostly attributes for all the physical volumes in a logical volume at once. .TP .B \-\-sysinit Indicates that \fBlvchange\fP(8) is being invoked from early system initialisation scripts (e.g. rc.sysinit or an initrd), before writeable 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 \fB\-\-ignorelockingfailure\fP, \fB\-\-ignoremonitoring\fP, \fB\-\-poll n\fP and setting \fBLVM_SUPPRESS_LOCKING_FAILURE_MESSAGES\fP environment variable. If \fB\-\-sysinit\fP is used in conjunction with lvmetad(8) enabled and running, autoactivation is preferred over manual activation via direct lvchange call. Logical volumes are autoactivated according to auto_activation_volume_list set in lvm.conf(5). .TP .B \-\-noudevsync Disable udev synchronisation. The process will not wait for notification from udev. It will continue irrespective of any possible udev processing in the background. You should only use this if udev is not running or has rules that ignore the devices LVM2 creates. .TP .B \-\-ignoremonitoring Make no attempt to interact with dmeventd unless \fB\-\-monitor\fP is specified. Do not use this if dmeventd is already monitoring a device. .TP .BR \-M ", " \-\-persistent " {" \fIy | \fIn } Set to y to make the minor number specified persistent. Change of persistent numbers is not supported for pool volumes. .TP .BR \-p ", " \-\-permission " {" \fIr | \fIrw } Change access permission to read-only or read/write. .TP .BR \-r ", " \-\-readahead " {" \fIReadAheadSectors | \fIauto | \fInone } Set read ahead sector count of this logical volume. For volume groups with metadata in lvm1 format, this must be a value between 2 and 120 sectors. The default value is "auto" which allows the kernel to choose a suitable value automatically. "None" is equivalent to specifying zero. .TP .B \-\-refresh If the logical volume is active, reload its metadata. This is not necessary in normal operation, but may be useful if something has gone wrong or if you're doing clustering manually without a clustered lock manager. .TP .BR \-Z ", " \-\-zero " {" \fIy | \fIn } Set zeroing mode for thin pool. Note: already provisioned blocks from pool in non-zero mode are not cleared in unwritten parts when setting zero to \fIy\fP. .SH ENVIRONMENT VARIABLES .TP .B LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES Suppress locking failure messages. .SH Examples Changes the permission on volume lvol1 in volume group vg00 to be read-only: .sp .B lvchange \-pr vg00/lvol1 .SH SEE ALSO .BR lvm (8), .BR lvmcache (7), .BR lvmthin (7), .BR lvcreate (8), .BR vgchange (8)