mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-22 17:35:59 +03:00
2e0740f7ef
'lvchange' is used to alter a RAID 1 logical volume's write-mostly and write-behind characteristics. The '--writemostly' parameter takes a PV as an argument with an optional trailing character to specify whether to set ('y'), unset ('n'), or toggle ('t') the value. If no trailing character is given, it will set the flag. Synopsis: lvchange [--writemostly <PV>:{t|y|n}] [--writebehind <count>] vg/lv Example: lvchange --writemostly /dev/sdb1:y --writebehind 512 vg/raid1_lv The last character in the 'lv_attr' field is used to show whether a device has the WriteMostly flag set. It is signified with a 'w'. If the device has failed, the 'p'artial flag has priority. Example ("nosync" raid1 with mismatch_cnt and writemostly): [~]# lvs -a --segment vg LV VG Attr #Str Type SSize raid1 vg Rwi---r-m 2 raid1 500.00m [raid1_rimage_0] vg Iwi---r-- 1 linear 500.00m [raid1_rimage_1] vg Iwi---r-w 1 linear 500.00m [raid1_rmeta_0] vg ewi---r-- 1 linear 4.00m [raid1_rmeta_1] vg ewi---r-- 1 linear 4.00m Example (raid1 with mismatch_cnt, writemostly - but failed drive): [~]# lvs -a --segment vg LV VG Attr #Str Type SSize raid1 vg rwi---r-p 2 raid1 500.00m [raid1_rimage_0] vg Iwi---r-- 1 linear 500.00m [raid1_rimage_1] vg Iwi---r-p 1 linear 500.00m [raid1_rmeta_0] vg ewi---r-- 1 linear 4.00m [raid1_rmeta_1] vg ewi---r-p 1 linear 4.00m A new reportable field has been added for writebehind as well. If write-behind has not been set or the LV is not RAID1, the field will be blank. Example (writebehind is set): [~]# lvs -a -o name,attr,writebehind vg LV Attr WBehind lv rwi-a-r-- 512 [lv_rimage_0] iwi-aor-w [lv_rimage_1] iwi-aor-- [lv_rmeta_0] ewi-aor-- [lv_rmeta_1] ewi-aor-- Example (writebehind is not set): [~]# lvs -a -o name,attr,writebehind vg LV Attr WBehind lv rwi-a-r-- [lv_rimage_0] iwi-aor-w [lv_rimage_1] iwi-aor-- [lv_rmeta_0] ewi-aor-- [lv_rmeta_1] ewi-aor--
205 lines
8.2 KiB
Groff
205 lines
8.2 KiB
Groff
.TH LVCHANGE 8 "LVM TOOLS #VERSION#" "Sistina Software UK" \" -*- nroff -*-
|
|
.SH NAME
|
|
lvchange \- 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 | l ]{ y | n }]
|
|
.RB [ \-\-alloc
|
|
.IR AllocationPolicy ]
|
|
.RB [ \-C | \-\-contiguous
|
|
.RI { y | n }]
|
|
.RB [ \-d | \-\-debug ]
|
|
.RB [ \-\-deltag
|
|
.IR Tag ]
|
|
.RB [ \-\-discards
|
|
.RI { ignore | nopassdown | passdown }]
|
|
.RB [ \-\-resync ]
|
|
.RB [ \-h | \-? | \-\-help ]
|
|
.RB [ \-\-ignorelockingfailure ]
|
|
.RB [ \-\-ignoremonitoring ]
|
|
.RB [ \-\-monitor
|
|
.RI { y | n }]
|
|
.RB [ \-\-poll
|
|
.RI { y | n }]
|
|
.RB [ \-\-syncaction
|
|
.RI { check | repair }]
|
|
.RB [ \-\-sysinit ]
|
|
.RB [ \-\-noudevsync ]
|
|
.RB [ \-M | \-\-persistent
|
|
.RI { y | n }]
|
|
.RB [ \-\-minor
|
|
.IR minor ]
|
|
.RB [ \-P | \-\-partial ]
|
|
.RB [ \-p | \-\-permission
|
|
.RI { r | rw }]
|
|
.RB [ \-r | \-\-readahead
|
|
.RI { ReadAheadSectors | auto | none }]
|
|
.RB [ \-\-refresh ]
|
|
.RB [ \-t | \-\-test ]
|
|
.RB [ \-v | \-\-verbose ]
|
|
.RB [ \-\-writebehind BehindCount ]
|
|
.RB [ \-\-writemostly PhysicalVolume ]
|
|
.RB [ \-Z | \-\-zero
|
|
.RI { y | n }]
|
|
.I LogicalVolumePath
|
|
.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 | \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. 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.
|
|
Autoactivation is not yet supported for logical volumes that
|
|
are part of partial or clustered volume groups.
|
|
.IP
|
|
If clustered locking is enabled, -aey will activate exclusively
|
|
on one node and -aly will activate only on the local node.
|
|
To deactivate only on the local node use -aln.
|
|
Logical volumes with single-host snapshots are always activated
|
|
exclusively because they can only be used on one node at once.
|
|
.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 \-\-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
|
|
.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 \-\-minor \fIminor
|
|
Set the minor number.
|
|
.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
|
|
.BR \-\-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
|
|
.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.
|
|
.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 \-\-writebehind " BehindCount"
|
|
Specify the maximum number of outstanding writes that are allowed to
|
|
devices in a RAID 1 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
|
|
.BR \-\-writemostly " PhysicalVolume[:{t|y|n}]"
|
|
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 ":n" to the physical volume or to toggle the value by specifying
|
|
":t". The \fI--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
|
|
.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 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 lvcreate (8),
|
|
.BR vgchange (8)
|