]> sourceware.org Git - lvm2.git/blame - tools/args.h
metadata: use lv_hash in segment-specific metadata parsing
[lvm2.git] / tools / args.h
CommitLineData
269930c0 1/*
9e85dbbf 2 * Copyright (C) 2001-2004 Sistina Software, Inc. All rights reserved.
2c8ff674 3 * Copyright (C) 2004-2024 Red Hat, Inc. All rights reserved.
269930c0 4 *
6606c3ae
AK
5 * This file is part of LVM2.
6 *
7 * This copyrighted material is made available to anyone wishing to use,
8 * modify, copy, or redistribute it subject to the terms and conditions
be684599 9 * of the GNU Lesser General Public License v.2.1.
6606c3ae 10 *
be684599 11 * You should have received a copy of the GNU Lesser General Public License
6606c3ae 12 * along with this program; if not, write to the Free Software Foundation,
fcbef05a 13 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
8a6d1dd4
JT
14 */
15
16/*
68176be1 17 * Put all long args that don't have a corresponding short option first.
269930c0 18 */
27f364af 19/* *INDENT-OFF* */
5c779b32
DT
20arg(ARG_UNUSED, '-', "", 0, 0, 0, NULL) /* place holder for unused 0 value */
21
22arg(abort_ARG, '\0', "abort", 0, 0, 0,
23 "#pvmove\n"
24 "Abort any pvmove operations in progress. If a pvmove was started\n"
36cac411 25 "with the --atomic option, then all LVs will remain on the source PV.\n"
5c779b32
DT
26 "Otherwise, segments that have been moved will remain on the\n"
27 "destination PV, while unmoved segments will remain on the source PV.\n"
28 "#lvpoll\n"
29 "Stop processing a poll operation in lvmpolld.\n")
30
31arg(activationmode_ARG, '\0', "activationmode", activationmode_VAL, 0, 0,
32 "Determines if LV activation is allowed when PVs are missing,\n"
33 "e.g. because of a device failure.\n"
34 "\\fBcomplete\\fP only allows LVs with no missing PVs to be activated,\n"
35 "and is the most restrictive mode.\n"
36 "\\fBdegraded\\fP allows RAID LVs with missing PVs to be activated.\n"
37 "(This does not include the \"mirror\" type, see \"raid1\" instead.)\n"
38 "\\fBpartial\\fP allows any LV with missing PVs to be activated, and\n"
39 "should only be used for recovery or repair.\n"
0f87b015 40 "For default, see \\fBlvm.conf\\fP(5) activation_mode.\n"
3d5182c8 41 "See \\fBlvmraid\\fP(7) for more information.\n")
5c779b32
DT
42
43arg(addtag_ARG, '\0', "addtag", tag_VAL, ARG_GROUPABLE, 0,
44 "Adds a tag to a PV, VG or LV. This option can be repeated to add\n"
a7a28bd9 45 "multiple tags at once. See \\fBlvm\\fP(8) for information about tags.\n")
5c779b32 46
83fe6e72
DT
47arg(adddev_ARG, '\0', "adddev", pv_VAL, 0, 0,
48 "Add a device to the devices file.\n")
fb7698b0
DT
49
50arg(deldev_ARG, '\0', "deldev", string_VAL, 0, 0,
51 "Remove a device from the devices file.\n"
52 "When used alone, --deldev specifies a device name.\n"
53 "When used with --deviceidtype, --deldev specifies a device id.\n")
54
7cc41413
DT
55arg(delnotfound_ARG, '\0', "delnotfound", 0, 0, 0,
56 "Remove devices file entries with no matching device.\n")
57
83fe6e72
DT
58arg(addpvid_ARG, '\0', "addpvid", string_VAL, 0, 0,
59 "Find a device with the PVID and add the device to the devices file.\n")
60arg(delpvid_ARG, '\0', "delpvid", string_VAL, 0, 0,
61 "Remove a device with the PVID from the devices file.\n")
62
5c779b32 63arg(aligned_ARG, '\0', "aligned", 0, 0, 0,
36cac411 64 "Use with --separator to align the output columns\n")
5c779b32
DT
65
66arg(alloc_ARG, '\0', "alloc", alloc_VAL, 0, 0,
67 "Determines the allocation policy when a command needs to allocate\n"
68 "Physical Extents (PEs) from the VG. Each VG and LV has an allocation policy\n"
01d5e4d1 69 "which can be changed with vgchange/lvchange, or overridden on the\n"
5c779b32
DT
70 "command line.\n"
71 "\\fBnormal\\fP applies common sense rules such as not placing parallel stripes\n"
72 "on the same PV.\n"
73 "\\fBinherit\\fP applies the VG policy to an LV.\n"
74 "\\fBcontiguous\\fP requires new PEs be placed adjacent to existing PEs.\n"
75 "\\fBcling\\fP places new PEs on the same PV as existing PEs in the same\n"
76 "stripe of the LV.\n"
77 "If there are sufficient PEs for an allocation, but normal does not\n"
78 "use them, \\fBanywhere\\fP will use them even if it reduces performance,\n"
79 "e.g. by placing two stripes on the same PV.\n"
80 "Optional positional PV args on the command line can also be used to limit\n"
81 "which PVs the command will use for allocation.\n"
3d5182c8 82 "See \\fBlvm\\fP(8) for more information about allocation.\n")
5c779b32
DT
83
84arg(atomic_ARG, '\0', "atomic", 0, 0, 0,
85 "Makes a pvmove operation atomic, ensuring that all affected LVs are\n"
86 "moved to the destination PV, or none are if the operation is aborted.\n")
87
88arg(atversion_ARG, '\0', "atversion", string_VAL, 0, 0,
89 "Specify an LVM version in x.y.z format where x is the major version,\n"
90 "the y is the minor version and z is the patchlevel (e.g. 2.2.106).\n"
91 "When configuration is displayed, the configuration settings recognized\n"
92 "at this LVM version will be considered only. This can be used\n"
93 "to display a configuration that a certain LVM version understands and\n"
94 "which does not contain any newer settings for which LVM would\n"
95 "issue a warning message when checking the configuration.\n")
96
c609dedc
DT
97arg(auto_ARG, '\0', "auto", 0, 0, 0,
98 "This option is used when automatically importing devices for the root VG.\n"
99 "The auto import is intended to be done once, on first boot, to create an\n"
100 "initial system.devices file for the root VG.\n"
101 "When this option is used, the vgimportdevices --rootvg command does nothing\n"
102 "if system.devices exists, or the file auto-import-rootvg does not exist\n"
2c8ff674 103 "(both in the \\fI#DEFAULT_SYS_DIR#/devices/\\fP directory.)\n")
c609dedc 104
d558b3ad
DT
105arg(autoactivation_ARG, '\0', "autoactivation", string_VAL, 0, 0,
106 "Specify if autoactivation is being used from an event.\n"
107 "This allows the command to apply settings that are specific\n"
108 "to event activation, such as device scanning optimizations\n"
109 "using pvs_online files created by event-based pvscans.\n")
110
0a28e3c4
DT
111arg(setautoactivation_ARG, '\0', "setautoactivation", bool_VAL, 0, 0,
112 "Set the autoactivation property on a VG or LV.\n"
113 "Display the property with vgs or lvs \"-o autoactivation\".\n"
114 "When the autoactivation property is disabled, the VG or LV\n"
115 "will not be activated by a command doing autoactivation\n"
116 "(vgchange, lvchange, or pvscan using -aay.)\n"
117 "If autoactivation is disabled on a VG, no LVs will be autoactivated\n"
118 "in that VG, and the LV autoactivation property has no effect.\n"
119 "If autoactivation is enabled on a VG, autoactivation can be disabled\n"
120 "for individual LVs.\n")
121
5c779b32
DT
122arg(binary_ARG, '\0', "binary", 0, 0, 0,
123 "Use binary values \"0\" or \"1\" instead of descriptive literal values\n"
124 "for columns that have exactly two valid values to report (not counting\n"
125 "the \"unknown\" value which denotes that the value could not be determined).\n")
126
127arg(bootloaderareasize_ARG, '\0', "bootloaderareasize", sizemb_VAL, 0, 0,
904e1e3d
DT
128 "Reserve space for the bootloader between the LVM metadata area and the first PE.\n"
129 "The bootloader area is reserved for bootloaders to embed their own data or\n"
130 "metadata; LVM will not use it.\n"
131 "The bootloader area begins where the first PE would otherwise be located.\n"
132 "The first PE is moved out by the size of the bootloader area, and then moved\n"
133 "out further if necessary to match the data alignment.\n"
36cac411 134 "The start of the bootloader area is always aligned, see also --dataalignment\n"
904e1e3d
DT
135 "and --dataalignmentoffset. The bootloader area may be larger than requested\n"
136 "due to the alignment, but it's never less than the requested size.\n"
137 "To see the bootloader area start and size of\n"
36cac411 138 "an existing PV use pvs -o +pv_ba_start,pv_ba_size.\n")
5c779b32 139
93918a19 140arg(cache_long_ARG, '\0', "cache", 0, ARG_LONG_OPT, 0,
5c779b32 141 "#pvscan\n"
117160b2 142 "Scan one or more devices and record that they are online.\n"
5c779b32 143 "#vgscan\n"
117160b2 144 "This option is no longer used.\n"
5c779b32 145 "#lvscan\n"
117160b2 146 "This option is no longer used.\n")
5c779b32 147
7b748b7c
ZK
148arg(cachemetadataformat_ARG, '\0', "cachemetadataformat", cachemetadataformat_VAL, 0, 0,
149 "Specifies the cache metadata format used by cache target.\n")
150
5c779b32
DT
151arg(cachemode_ARG, '\0', "cachemode", cachemode_VAL, 0, 0,
152 "Specifies when writes to a cache LV should be considered complete.\n"
153 "\\fBwriteback\\fP considers a write complete as soon as it is\n"
154 "stored in the cache pool.\n"
155 "\\fBwritethough\\fP considers a write complete only when it has\n"
156 "been stored in both the cache pool and on the origin LV.\n"
157 "While writethrough may be slower for writes, it is more\n"
158 "resilient if something should happen to a device associated with the\n"
2a5e2458 159 "cache pool LV. With \\fBpassthrough\\fP, all reads are served\n"
5c779b32
DT
160 "from the origin LV (all reads miss the cache) and all writes are\n"
161 "forwarded to the origin LV; additionally, write hits cause cache\n"
2a5e2458 162 "block invalidates. See \\fBlvmcache\\fP(7) for more information.\n")
5c779b32
DT
163
164arg(cachepool_ARG, '\0', "cachepool", lv_VAL, 0, 0,
a9eaab6b
DT
165 "The name of a cache pool.\n")
166
167arg(cachevol_ARG, '\0', "cachevol", lv_VAL, 0, 0,
168 "The name of a cache volume.\n")
5c779b32 169
2aed2a41 170arg(cachedevice_ARG, '\0', "cachedevice", pv_VAL, ARG_GROUPABLE, 0,
21b37964
DT
171 "The name of a device to use for a cache.\n")
172
173arg(cachesize_ARG, '\0', "cachesize", sizemb_VAL, 0, 0,
174 "The size of cache to use.\n")
175
83fe6e72 176arg(check_ARG, '\0', "check", 0, 0, 0,
a972d63c
DT
177 "Checks the content of the devices file.\n"
178 "Reports incorrect device names or PVIDs for entries.\n")
83fe6e72 179
5c779b32
DT
180arg(commandprofile_ARG, '\0', "commandprofile", string_VAL, 0, 0,
181 "The command profile to use for command configuration.\n"
3d5182c8 182 "See \\fBlvm.conf\\fP(5) for more information about profiles.\n")
5c779b32 183
96e9929f
ZK
184arg(compression_ARG, '\0', "compression", bool_VAL, 0, 0,
185 "Controls whether compression is enabled or disable for VDO volume.\n"
186 "See \\fBlvmvdo\\fP(7) for more information about VDO usage.\n")
187
5c779b32 188arg(config_ARG, '\0', "config", string_VAL, 0, 0,
0f87b015
ZK
189 "Config settings for the command. These override \\fBlvm.conf\\fP(5) settings.\n"
190 "The String arg uses the same format as \\fBlvm.conf\\fP(5),\n"
5c779b32 191 "or may use section/field syntax.\n"
3d5182c8 192 "See \\fBlvm.conf\\fP(5) for more information about config.\n")
5c779b32
DT
193
194arg(configreport_ARG, '\0', "configreport", configreport_VAL, ARG_GROUPABLE, 1,
a7a28bd9 195 "See \\fBlvmreport\\fP(7).\n")
5c779b32
DT
196
197arg(configtype_ARG, '\0', "typeconfig", configtype_VAL, 0, 0,
c56d8535
DT
198 "\\fBcurrent\\fP prints the config settings that would be applied\n"
199 "to an lvm command (assuming the command does not override them\n"
200 "on the command line.) This includes:\n"
201 "settings that have been modified in lvm config files,\n"
202 "settings that get their default values from config files,\n"
203 "and default settings that have been uncommented in config files.\n"
204 "\\fBdefault\\fP prints all settings with their default values.\n"
205 "Changes made in lvm config files are not reflected in the output.\n"
206 "Some settings get their default values internally,\n"
207 "and these settings are printed as comments.\n"
208 "Other settings get their default values from config files,\n"
209 "and these settings are not printed as comments.\n"
210 "\\fBdiff\\fP prints only config settings that have been modified\n"
211 "from their default values in config files (the difference between\n"
212 "current and default.)\n"
213 "\\fBfull\\fP prints every setting uncommented and set to the\n"
214 "current value, i.e. how it would be used by an lvm command.\n"
215 "This includes settings modified in config files, settings that usually\n"
216 "get defaults internally, and settings that get defaults from config files.\n"
217 "\\fBlist\\fP prints all config names without values.\n"
218 "\\fBmissing\\fP prints settings that are missing from the\n"
219 "lvm config files. A missing setting that usually gets its default\n"
220 "from config files is printed uncommented and set to the internal default.\n"
221 "Settings that get their default internally and are not set in config files\n"
222 "are printed commented with the internal default.\n"
223 "\\fBnew\\fP prints config settings that have been added since\n"
224 "the lvm version specified by --sinceversion. They are printed\n"
225 "with their default values.\n"
226 "\\fBprofilable\\fP prints settings with their default values that can be set from a profile.\n"
227 "\\fBprofilable-command\\fP prints settings with their default values that can be set from a command profile.\n"
228 "\\fBprofilable-metadata\\fP prints settings with their default values that can be set from a metadata profile.\n"
229 "Also see \\fBlvm.conf\\fP(5).\n")
5c779b32 230
5c779b32 231arg(dataalignment_ARG, '\0', "dataalignment", sizekb_VAL, 0, 0,
904e1e3d
DT
232 "Align the start of a PV data area with a multiple of this number.\n"
233 "To see the location of the first Physical Extent (PE) of an existing PV,\n"
234 "use pvs -o +pe_start. In addition, it may be shifted by an alignment offset,\n"
235 "see --dataalignmentoffset.\n"
236 "Also specify an appropriate PE size when creating a VG.\n")
5c779b32
DT
237
238arg(dataalignmentoffset_ARG, '\0', "dataalignmentoffset", sizekb_VAL, 0, 0,
904e1e3d 239 "Shift the start of the PV data area by this additional offset.\n")
5c779b32 240
96e9929f
ZK
241arg(deduplication_ARG, '\0', "deduplication", bool_VAL, 0, 0,
242 "Controls whether deduplication is enabled or disable for VDO volume.\n"
243 "See \\fBlvmvdo\\fP(7) for more information about VDO usage.\n")
244
5c779b32
DT
245arg(deltag_ARG, '\0', "deltag", tag_VAL, ARG_GROUPABLE, 0,
246 "Deletes a tag from a PV, VG or LV. This option can be repeated to delete\n"
a7a28bd9 247 "multiple tags at once. See \\fBlvm\\fP(8) for information about tags.\n")
5c779b32
DT
248
249arg(detachprofile_ARG, '\0', "detachprofile", 0, 0, 0,
250 "Detaches a metadata profile from a VG or LV.\n"
3d5182c8 251 "See \\fBlvm.conf\\fP(5) for more information about profiles.\n")
5c779b32 252
440d6ae7
DT
253arg(deviceidtype_ARG, '\0', "deviceidtype", string_VAL, 0, 0,
254 "The type of device ID to use for the device.\n"
255 "If the specified type is available for the device,\n"
256 "then it will override the default type that lvm would use.\n")
257
83fe6e72 258arg(devices_ARG, '\0', "devices", pv_VAL, ARG_GROUPABLE, 0,
dd284600
DT
259 "Restricts the devices that are visible and accessible to the command.\n"
260 "Devices not listed will appear to be missing. This option can be\n"
261 "repeated, or accepts a comma separated list of devices. This overrides\n"
83fe6e72
DT
262 "the devices file.\n")
263
264arg(devicesfile_ARG, '\0', "devicesfile", string_VAL, 0, 0,
265 "A file listing devices that LVM should use.\n"
0f87b015
ZK
266 "The file must exist in \\fI#DEFAULT_SYS_DIR#/devices/\\fP and is managed\n"
267 "with the \\fBlvmdevices\\fP(8) command.\n"
268 "This overrides the \\fBlvm.conf\\fP(5) \\fBdevices/devicesfile\\fP and\n"
269 "\\fBdevices/use_devicesfile\\fP settings.\n")
83fe6e72 270
5c779b32
DT
271arg(discards_ARG, '\0', "discards", discards_VAL, 0, 0,
272 "Specifies how the device-mapper thin pool layer in the kernel should\n"
273 "handle discards.\n"
274 "\\fBignore\\fP causes the thin pool to ignore discards.\n"
275 "\\fBnopassdown\\fP causes the thin pool to process discards itself to\n"
276 "allow reuse of unneeded extents in the thin pool.\n"
277 "\\fBpassdown\\fP causes the thin pool to process discards itself\n"
3d5182c8
DT
278 "(like nopassdown) and pass the discards to the underlying device.\n"
279 "See \\fBlvmthin\\fP(7) for more information.\n")
5c779b32
DT
280
281arg(driverloaded_ARG, '\0', "driverloaded", bool_VAL, 0, 0,
282 "If set to no, the command will not attempt to use device-mapper.\n"
283 "For testing and debugging.\n")
284
2da6f01c 285arg(dump_ARG, '\0', "dump", dumptype_VAL, 0, 0,
3145a855
DT
286 "Dump headers and metadata from a PV for debugging and repair.\n"
287 "Option values include: \\fBheaders\\fP to print and check LVM headers,\n"
288 "\\fBmetadata\\fP to print or save the current text metadata,\n"
289 "\\fBmetadata_all\\fP to list or save all versions of metadata,\n"
290 "\\fBmetadata_search\\fP to list or save all versions of metadata,\n"
291 "searching standard locations in case of damaged headers,\n"
292 "\\fBmetadata_area\\fP to save an entire text metadata area to a file.\n")
52586b10 293
5c779b32
DT
294arg(errorwhenfull_ARG, '\0', "errorwhenfull", bool_VAL, 0, 0,
295 "Specifies thin pool behavior when data space is exhausted.\n"
296 "When yes, device-mapper will immediately return an error\n"
297 "when a thin pool is full and an I/O request requires space.\n"
298 "When no, device-mapper will queue these I/O requests for a\n"
299 "period of time to allow the thin pool to be extended.\n"
300 "Errors are returned if no space is available after the timeout.\n"
3d5182c8
DT
301 "(Also see dm-thin-pool kernel module option no_space_timeout.)\n"
302 "See \\fBlvmthin\\fP(7) for more information.\n")
5c779b32 303
93918a19 304arg(force_long_ARG, '\0', "force", 0, ARG_COUNTABLE | ARG_LONG_OPT, 0,
5c779b32
DT
305 "Force metadata restore even with thin pool LVs.\n"
306 "Use with extreme caution. Most changes to thin metadata\n"
307 "cannot be reverted.\n"
308 "You may lose data if you restore metadata that does not match the\n"
309 "thin pool kernel metadata precisely.\n")
310
311arg(foreign_ARG, '\0', "foreign", 0, 0, 0,
312 "Report/display foreign VGs that would otherwise be skipped.\n"
a7a28bd9 313 "See \\fBlvmsystemid\\fP(7) for more information about foreign VGs.\n")
5c779b32 314
264827cb
DT
315arg(fs_ARG, '\0', "fs", string_VAL, 0, 0,
316 "Control file system resizing when resizing an LV.\n"
317 "\\fBchecksize\\fP: Check the fs size and reduce the LV if the fs is not\n"
318 "using the reduced space (fs reduce is not needed.) If the reduced space\n"
319 "is used by the fs, then do not resize the fs or LV, and return an error.\n"
320 "(checksize only applies when reducing, and does nothing for extend.)\n"
321 "\\fBresize\\fP: Resize the fs by calling the fs-specific resize command.\n"
322 "This may also include mounting, unmounting, or running fsck. See --fsmode to\n"
323 "control mounting behavior, and --nofsck to disable fsck.\n"
324 "\\fBresize_fsadm\\fP: Use the old method of calling fsadm to handle the fs\n"
325 "(deprecated.) Warning: this option does not prevent lvreduce from destroying\n"
326 "file systems that are unmounted (or mounted if prompts are skipped.)\n"
327 "\\fBignore\\fP: Resize the LV without checking for or handling a file system.\n"
328 "Warning: using ignore when reducing the LV size may destroy the file system.\n")
329
330arg(fsmode_ARG, '\0', "fsmode", string_VAL, 0, 0,
331 "Control file system mounting behavior for fs resize.\n"
332 "\\fBmanage\\fP: Mount or unmount the fs as needed to resize the fs,\n"
333 "and attempt to restore the original mount state at the end.\n"
334 "\\fBnochange\\fP: Do not mount or unmount the fs. If mounting or unmounting\n"
335 "is required to resize the fs, then do not resize the fs or the LV and fail\n"
336 "the command.\n"
337 "\\fBoffline\\fP: Unmount the fs if it is mounted, and resize the fs while it\n"
338 "is unmounted. If mounting is required to resize the fs, then do not resize\n"
339 "the fs or the LV and fail the command.\n")
340
5c779b32
DT
341arg(handlemissingpvs_ARG, '\0', "handlemissingpvs", 0, 0, 0,
342 "Allows a polling operation to continue when PVs are missing,\n"
343 "e.g. for repairs due to faulty devices.\n")
344
14d0a9ee
PR
345arg(headings_ARG, '\0', "headings", headings_VAL, 0, 0,
346 "Type of headings to use in report output.\n"
347 "\\fBnone\\fP or \\fB0\\fP: No headings.\n"
348 "\\fBabbrev\\fP or \\fB1\\fP: Column name abbreviations.\n"
349 "\\fBfull\\fP or \\fB2\\fP: Full column names.\n")
350
5c779b32
DT
351arg(ignoreadvanced_ARG, '\0', "ignoreadvanced", 0, 0, 0,
352 "Exclude advanced configuration settings from the output.\n")
353
354arg(ignorelocal_ARG, '\0', "ignorelocal", 0, 0, 0,
c56d8535
DT
355 "Ignore the local section. The local section should be defined in\n"
356 "the lvmlocal.conf file, and should contain config settings\n"
357 "specific to the local host which should not be copied to\n"
358 "other hosts.\n")
5c779b32
DT
359
360arg(ignorelockingfailure_ARG, '\0', "ignorelockingfailure", 0, 0, 0,
361 "Allows a command to continue with read-only metadata\n"
362 "operations after locking failures.\n")
363
364arg(ignoremonitoring_ARG, '\0', "ignoremonitoring", 0, 0, 0,
36cac411 365 "Do not interact with dmeventd unless --monitor is specified.\n"
5c779b32
DT
366 "Do not use this if dmeventd is already monitoring a device.\n")
367
368arg(ignoreskippedcluster_ARG, '\0', "ignoreskippedcluster", 0, 0, 0,
428514a0 369 "No longer used.\n")
5c779b32
DT
370
371arg(ignoreunsupported_ARG, '\0', "ignoreunsupported", 0, 0, 0,
372 "Exclude unsupported configuration settings from the output. These settings are\n"
373 "either used for debugging and development purposes only or their support is not\n"
374 "yet complete and they are not meant to be used in production. The \\fBcurrent\\fP\n"
375 "and \\fBdiff\\fP types include unsupported settings in their output by default,\n"
376 "all the other types ignore unsupported settings.\n")
377
83fe6e72
DT
378arg(importdevices_ARG, '\0', "importdevices", 0, 0, 0,
379 "Add devices to the devices file.\n")
380
bbf8e7db
DT
381arg(journal_ARG, '\0', "journal", string_VAL, 0, 0,
382 "Record information in the systemd journal.\n"
383 "This information is in addition to information\n"
384 "enabled by the lvm.conf log/journal setting.\n"
385 "command: record information about the command.\n"
386 "output: record the default command output.\n"
387 "debug: record full command debugging.\n")
388
5c779b32
DT
389arg(labelsector_ARG, '\0', "labelsector", number_VAL, 0, 0,
390 "By default the PV is labelled with an LVM2 identifier in its second\n"
391 "sector (sector 1). This lets you use a different sector near the\n"
36cac411 392 "start of the disk (between 0 and 3 inclusive - see LABEL_SCAN_SECTORS\n"
5c779b32
DT
393 "in the source). Use with care.\n")
394
0b6782fa
DT
395arg(listlvs_ARG, '\0', "listlvs", 0, 0, 0,
396 "Print a list of LVs that use the device.\n")
397
398arg(listvg_ARG, '\0', "listvg", 0, 0, 0,
399 "Print the VG that uses the device.\n")
400
401arg(checkcomplete_ARG, '\0', "checkcomplete", 0, 0, 0,
402 "Check if all the devices used by a VG or LV are present,\n"
403 "and print \"complete\" or \"incomplete\" for each listed\n"
404 "VG or LV. This option is used as a part of event-based\n"
405 "autoactivation, so pvscan will do nothing if this option\n"
406 "is set and event_activation=0 in the config settings.\n")
407
5c779b32
DT
408arg(lockopt_ARG, '\0', "lockopt", string_VAL, 0, 0,
409 "Used to pass options for special cases to lvmlockd.\n"
a7a28bd9 410 "See \\fBlvmlockd\\fP(8) for more information.\n")
5c779b32
DT
411
412arg(lockstart_ARG, '\0', "lockstart", 0, 0, 0,
413 "Start the lockspace of a shared VG in lvmlockd.\n"
414 "lvmlockd locks becomes available for the VG, allowing LVM to use the VG.\n"
a7a28bd9 415 "See \\fBlvmlockd\\fP(8) for more information.\n")
5c779b32
DT
416
417arg(lockstop_ARG, '\0', "lockstop", 0, 0, 0,
418 "Stop the lockspace of a shared VG in lvmlockd.\n"
419 "lvmlockd locks become unavailable for the VG, preventing LVM from using the VG.\n"
a7a28bd9 420 "See \\fBlvmlockd\\fP(8) for more information.\n")
5c779b32
DT
421
422arg(locktype_ARG, '\0', "locktype", locktype_VAL, 0, 0,
423 "#vgchange\n"
424 "Change the VG lock type to or from a shared lock type used with lvmlockd.\n"
a7a28bd9 425 "See \\fBlvmlockd\\fP(8) for more information.\n"
5c779b32 426 "#vgcreate\n"
36cac411 427 "Specify the VG lock type directly in place of using --shared.\n"
a7a28bd9 428 "See \\fBlvmlockd\\fP(8) for more information.\n")
5c779b32
DT
429
430arg(logonly_ARG, '\0', "logonly", 0, 0, 0,
431 "Suppress command report and display only log report.\n")
432
f46b28bd
DT
433arg(longhelp_ARG, '\0', "longhelp", 0, 0, 0,
434 "Display long help text.\n")
435
aa85ed17
DT
436arg(majoritypvs_ARG, '\0', "majoritypvs", 0, 0, 0,
437 "Change the VG system ID if the majority of PVs in the VG\n"
438 "are present (one more than half).\n")
439
5c779b32
DT
440arg(maxrecoveryrate_ARG, '\0', "maxrecoveryrate", sizekb_VAL, 0, 0,
441 "Sets the maximum recovery rate for a RAID LV. The rate value\n"
442 "is an amount of data per second for each device in the array.\n"
3d5182c8
DT
443 "Setting the rate to 0 means it will be unbounded.\n"
444 "See \\fBlvmraid\\fP(7) for more information.\n")
5c779b32
DT
445
446arg(merge_ARG, '\0', "merge", 0, 0, 0,
36cac411 447 "An alias for --mergethin, --mergemirrors, or --mergesnapshot,\n"
5c779b32
DT
448 "depending on the type of LV.\n")
449
450arg(mergemirrors_ARG, '\0', "mergemirrors", 0, 0, 0,
451 "Merge LV images that were split from a raid1 LV.\n"
36cac411 452 "See --splitmirrors with --trackchanges.\n")
5c779b32
DT
453
454arg(mergesnapshot_ARG, '\0', "mergesnapshot", 0, 0, 0,
455 "Merge COW snapshot LV into its origin.\n"
456 "When merging a snapshot, if both the origin and snapshot LVs are not open,\n"
457 "the merge will start immediately. Otherwise, the merge will start the\n"
458 "first time either the origin or snapshot LV are activated and both are\n"
459 "closed. Merging a snapshot into an origin that cannot be closed, for\n"
460 "example a root filesystem, is deferred until the next time the origin\n"
461 "volume is activated. When merging starts, the resulting LV will have the\n"
462 "origin's name, minor number and UUID. While the merge is in progress,\n"
463 "reads or writes to the origin appear as being directed to the snapshot\n"
464 "being merged. When the merge finishes, the merged snapshot is removed.\n"
465 "Multiple snapshots may be specified on the command line or a @tag may be\n"
466 "used to specify multiple snapshots be merged to their respective origin.\n")
467
468arg(mergethin_ARG, '\0', "mergethin", 0, 0, 0,
469 "Merge thin LV into its origin LV.\n"
470 "The origin thin LV takes the content of the thin snapshot,\n"
3d5182c8
DT
471 "and the thin snapshot LV is removed.\n"
472 "See \\fBlvmthin\\fP(7) for more information.\n")
5c779b32
DT
473
474arg(mergedconfig_ARG, '\0', "mergedconfig", 0, 0, 0,
36cac411
HM
475 "When the command is run with --config\n"
476 "and/or --commandprofile (or using LVM_COMMAND_PROFILE\n"
477 "environment variable), --profile, or --metadataprofile,\n"
5c779b32
DT
478 "merge all the contents of the \"config cascade\" before displaying it.\n"
479 "Without merging, only the configuration at the front of the\n"
480 "cascade is displayed.\n"
3d5182c8 481 "See \\fBlvm.conf\\fP(5) for more information about config.\n")
5c779b32 482
5c779b32
DT
483arg(metadataignore_ARG, '\0', "metadataignore", bool_VAL, 0, 0,
484 "Specifies the metadataignore property of a PV.\n"
485 "If yes, metadata areas on the PV are ignored, and lvm will\n"
486 "not store metadata in the metadata areas of the PV.\n"
487 "If no, lvm will store metadata on the PV.\n")
488
489arg(metadataprofile_ARG, '\0', "metadataprofile", string_VAL, 0, 0,
490 "The metadata profile to use for command configuration.\n"
3d5182c8 491 "See \\fBlvm.conf\\fP(5) for more information about profiles.\n")
5c779b32
DT
492
493arg(metadatasize_ARG, '\0', "metadatasize", sizemb_VAL, 0, 0,
494 "The approximate amount of space used for each VG metadata area.\n"
495 "The size may be rounded.\n")
496
497arg(minor_ARG, '\0', "minor", number_VAL, ARG_GROUPABLE, 0,
498 "#lvcreate\n"
499 "#lvchange\n"
500 "Sets the minor number of an LV block device.\n"
501 "#pvscan\n"
502 "The minor number of a device.\n")
503
504arg(minrecoveryrate_ARG, '\0', "minrecoveryrate", sizekb_VAL, 0, 0,
505 "Sets the minimum recovery rate for a RAID LV. The rate value\n"
506 "is an amount of data per second for each device in the array.\n"
3d5182c8
DT
507 "Setting the rate to 0 means it will be unbounded.\n"
508 "See \\fBlvmraid\\fP(7) for more information.\n")
5c779b32
DT
509
510arg(mirrorlog_ARG, '\0', "mirrorlog", mirrorlog_VAL, 0, 0,
511 "Specifies the type of mirror log for LVs with the \"mirror\" type\n"
512 "(does not apply to the \"raid1\" type.)\n"
513 "\\fBdisk\\fP is a persistent log and requires a small amount of\n"
514 "storage space, usually on a separate device from the data being mirrored.\n"
515 "\\fBcore\\fP is not persistent; the log is kept only in memory.\n"
516 "In this case, the mirror must be synchronized (by copying LV data from\n"
517 "the first device to others) each time the LV is activated, e.g. after reboot.\n"
07040942
DT
518 "\\fBmirrored\\fP is a persistent log that is itself mirrored, but\n"
519 "should be avoided. Instead, use the raid1 type for log redundancy.\n")
5c779b32
DT
520
521arg(mirrorsonly_ARG, '\0', "mirrorsonly", 0, 0, 0,
522 "Only remove missing PVs from mirror LVs.\n")
523
524arg(mknodes_ARG, '\0', "mknodes", 0, 0, 0,
525 "Also checks the LVM special files in /dev that are needed for active\n"
1ced65b6
PR
526 "LVs and creates any missing ones and removes unused ones.\n"
527 "See also additional --refresh option for use in udev environment.\n")
5c779b32
DT
528
529arg(monitor_ARG, '\0', "monitor", bool_VAL, 0, 0,
530 "Start (yes) or stop (no) monitoring an LV with dmeventd.\n"
531 "dmeventd monitors kernel events for an LV, and performs\n"
e3534d0f 532 "automated maintenance for the LV in response to specific events.\n"
a7a28bd9 533 "See \\fBdmeventd\\fP(8) for more information.\n")
5c779b32
DT
534
535arg(nameprefixes_ARG, '\0', "nameprefixes", 0, 0, 0,
536 "Add an \"LVM2_\" prefix plus the field name to the output. Useful\n"
36cac411 537 "with --noheadings to produce a list of field=value pairs that can\n"
5c779b32
DT
538 "be used to set environment variables (for example, in udev rules).\n")
539
540arg(noheadings_ARG, '\0', "noheadings", 0, 0, 0,
541 "Suppress the headings line that is normally the first line of output.\n"
542 "Useful if grepping the output.\n")
543
9857b5a3
DT
544arg(nohints_ARG, '\0', "nohints", 0, 0, 0,
545 "Do not use the hints file to locate devices for PVs. A command may read\n"
546 "more devices to find PVs when hints are not used. The command will still\n"
547 "perform standard hint file invalidation where appropriate.\n")
548
5c779b32
DT
549arg(nohistory_ARG, '\0', "nohistory", 0, 0, 0,
550 "Do not record history of LVs being removed.\n"
551 "This has no effect unless the configuration setting\n"
552 "metadata/record_lvs_history is enabled.\n")
553
554arg(nolocking_ARG, '\0', "nolocking", 0, 0, 0,
86a0a652 555 "Disable locking. Use with caution, concurrent commands may produce\n"
f1578b4a 556 "incorrect results.\n")
5c779b32
DT
557
558arg(norestorefile_ARG, '\0', "norestorefile", 0, 0, 0,
36cac411 559 "In conjunction with --uuid, this allows a uuid to be specified\n"
5c779b32
DT
560 "without also requiring that a backup of the metadata be provided.\n")
561
562arg(nosuffix_ARG, '\0', "nosuffix", 0, 0, 0,
36cac411 563 "Suppress the suffix on output sizes. Use with --units\n"
5c779b32
DT
564 "(except h and H) if processing the output.\n")
565
566arg(nosync_ARG, '\0', "nosync", 0, 0, 0,
567 "Causes the creation of mirror, raid1, raid4, raid5 and raid10 to skip the\n"
568 "initial synchronization. In case of mirror, raid1 and raid10, any data\n"
569 "written afterwards will be mirrored, but the original contents will not be\n"
570 "copied. In case of raid4 and raid5, no parity blocks will be written,\n"
571 "though any data written afterwards will cause parity blocks to be stored.\n"
572 "This is useful for skipping a potentially long and resource intensive initial\n"
573 "sync of an empty mirror/raid1/raid4/raid5 and raid10 LV.\n"
574 "This option is not valid for raid6, because raid6 relies on proper parity\n"
575 "(P and Q Syndromes) being created during initial synchronization in order\n"
576 "to reconstruct proper user date in case of device failures.\n"
577 "raid0 and raid0_meta do not provide any data copies or parity support\n"
578 "and thus do not support initial synchronization.\n")
579
580arg(notifydbus_ARG, '\0', "notifydbus", 0, 0, 0,
36cac411
HM
581 "Send a notification to D-Bus. The command will exit with an error\n"
582 "if LVM is not built with support for D-Bus notification, or if the\n"
5c779b32
DT
583 "notify_dbus config setting is disabled.\n")
584
585arg(noudevsync_ARG, '\0', "noudevsync", 0, 0, 0,
96123b90 586 "Disables udev synchronization. The process will not wait for notification\n"
5c779b32
DT
587 "from udev. It will continue irrespective of any possible udev processing\n"
588 "in the background. Only use this if udev is not running or has rules that\n"
589 "ignore the devices LVM creates.\n")
590
591arg(originname_ARG, '\0', "originname", lv_VAL, 0, 0,
592 "Specifies the name to use for the external origin LV when converting an LV\n"
593 "to a thin LV. The LV being converted becomes a read-only external origin\n"
594 "with this name.\n")
595
4f9ff145 596arg(setphysicalvolumesize_ARG, '\0', "setphysicalvolumesize", sizemb_VAL, 0, 0,
5c779b32
DT
597 "Overrides the automatically detected size of the PV.\n"
598 "Use with care, or prior to reducing the physical size of the device.\n")
599
9cf08836
DT
600arg(settings_ARG, '\0', "settings", string_VAL, ARG_GROUPABLE, 0,
601 "Specifies command specific settings in \"Key = Value\" form.\n"
3f381784
DT
602 "Combine multiple settings in quotes, or repeat the settings\n"
603 "option for each.\n")
9cf08836 604
5c779b32
DT
605arg(poll_ARG, '\0', "poll", bool_VAL, 0, 0,
606 "When yes, start the background transformation of an LV.\n"
607 "An incomplete transformation, e.g. pvmove or lvconvert interrupted\n"
36cac411 608 "by reboot or crash, can be restarted from the last checkpoint with --poll y.\n"
5c779b32
DT
609 "When no, background transformation of an LV will not occur, and the\n"
610 "transformation will not complete. It may not be appropriate to immediately\n"
36cac411
HM
611 "poll an LV after activation, in which case --poll n can be used to defer\n"
612 "polling until a later --poll y command.\n")
5c779b32
DT
613
614arg(polloperation_ARG, '\0', "polloperation", polloperation_VAL, 0, 0,
615 "The command to perform from lvmpolld.\n")
616
617/* Not used. */
618arg(pooldatasize_ARG, '\0', "pooldatasize", sizemb_VAL, 0, 0, NULL)
619
4ccedcea
ZK
620arg(pooldatavdo_ARG, '\0', "pooldatavdo", bool_VAL, 0, 0,
621 "Use VDO type volume for pool data volume.\n")
622
5c779b32
DT
623arg(poolmetadata_ARG, '\0', "poolmetadata", lv_VAL, 0, 0,
624 "The name of a an LV to use for storing pool metadata.\n")
625
a6a2788e 626arg(poolmetadatasize_ARG, '\0', "poolmetadatasize", sizemb_VAL, 0, 0,
b6c4b7cf
DT
627 "#lvcreate\n"
628 "#lvconvert\n"
629 "Specifies the size of the new pool metadata LV.\n"
630 "#lvresize\n"
631 "#lvextend\n"
632 "Specifies the new size of the pool metadata LV.\n"
633 "The plus prefix \\fB+\\fP can be used, in which case\n"
634 "the value is added to the current size.\n")
5c779b32
DT
635
636arg(poolmetadataspare_ARG, '\0', "poolmetadataspare", bool_VAL, 0, 0,
637 "Enable or disable the automatic creation and management of a\n"
638 "spare pool metadata LV in the VG. A spare metadata LV is reserved\n"
639 "space that can be used when repairing a pool.\n")
640
641arg(profile_ARG, '\0', "profile", string_VAL, 0, 0,
36cac411 642 "An alias for --commandprofile or --metadataprofile, depending\n"
5c779b32
DT
643 "on the command.\n")
644
645arg(pvmetadatacopies_ARG, '\0', "pvmetadatacopies", pvmetadatacopies_VAL, 0, 0,
646 "The number of metadata areas to set aside on a PV for storing VG metadata.\n"
647 "When 2, one copy of the VG metadata is stored at the front of the PV\n"
648 "and a second copy is stored at the end.\n"
904e1e3d 649 "When 1, one copy of the VG metadata is stored at the front of the PV.\n"
5c779b32
DT
650 "When 0, no copies of the VG metadata are stored on the given PV.\n"
651 "This may be useful in VGs containing many PVs (this places limitations\n"
652 "on the ability to use vgsplit later.)\n")
653
d9e8895a
DT
654arg(raidintegrity_ARG, '\0', "raidintegrity", bool_VAL, 0, 0,
655 "Enable or disable data integrity checksums for raid images.\n")
656
657arg(raidintegrityblocksize_ARG, '\0', "raidintegrityblocksize", number_VAL, 0, 0,
658 "The block size to use for dm-integrity on raid images.\n"
659 "The integrity block size should usually match the device\n"
660 "logical block size, or the file system block size.\n"
661 "It may be less than the file system block size, but not\n"
662 "less than the device logical block size.\n"
663 "Possible values: 512, 1024, 2048, 4096.\n")
664
665arg(raidintegritymode_ARG, '\0', "raidintegritymode", string_VAL, 0, 0,
666 "Use a journal (default) or bitmap for keeping integrity checksums consistent\n"
667 "in case of a crash. The bitmap areas are recalculated after a crash, so corruption\n"
668 "in those areas would not be detected. A journal does not have this problem.\n"
669 "The journal mode doubles writes to storage, but can improve performance for\n"
670 "scattered writes packed into a single journal write.\n"
671 "bitmap mode can in theory achieve full write throughput of the device,\n"
672 "but would not benefit from the potential scattered write optimization.\n")
673
5c779b32 674arg(readonly_ARG, '\0', "readonly", 0, 0, 0,
d68c227a 675 "Prevent the command from making changes, including activation and\n"
1b688416 676 "metadata updates. (See --permission r for read only LVs.)\n")
5c779b32
DT
677
678arg(refresh_ARG, '\0', "refresh", 0, 0, 0,
37773c10
DT
679 "#lvmdevices\n"
680 "Search for missing PVs on new devices, and update the devices file\n"
681 "with new device IDs for the PVs if they are found on new devices.\n"
682 "This is useful if PVs have been moved to new devices with new WWIDs,\n"
683 "for example. The device ID type and name may both change for a PV.\n"
684 "WARNING: if a PV is detached from the system, but a device containing a\n"
685 "clone or snapshot of that PV is present, then refresh would replace the\n"
686 "correct device ID with the clone/snapshot device ID, and lvm would begin\n"
687 "using the wrong device for the PV. Use deldev/adddev to safely change\n"
688 "a PV device ID in this scenario.\n"
689 "#vgchange\n"
690 "#lvchange\n"
691 "#vgmknodes\n"
1ced65b6 692 "#vgscan\n"
5c779b32 693 "If the LV is active, reload its metadata.\n"
9472e9c5
PR
694 "In an environment where udev is used to manage the /dev content,\n"
695 "usage of this option is highly recommended. This is because refresh\n"
ff2cadbf 696 "also regenerates udev events for an LV based on which existing udev\n"
9472e9c5
PR
697 "rules are applied to set the /dev content and permissions.\n"
698 "Also, this operation may be useful if something has gone wrong,\n"
699 "or if some form of manual LV sharing is being used.\n")
5c779b32
DT
700
701arg(removemissing_ARG, '\0', "removemissing", 0, 0, 0,
702 "Removes all missing PVs from the VG, if there are no LVs allocated\n"
703 "on them. This resumes normal operation of the VG (new LVs may again\n"
704 "be created, changed and so on).\n"
705 "If this is not possible because LVs are referencing the missing PVs,\n"
36cac411 706 "this option can be combined with --force to have the command remove\n"
5c779b32
DT
707 "any partial LVs. In this case, any LVs and dependent snapshots that\n"
708 "were partly on the missing disks are removed completely, including\n"
709 "those parts on disks that are still present.\n"
710 "If LVs spanned several disks, including ones that are lost, salvaging\n"
711 "some data first may be possible by activating LVs in partial mode.\n")
712
713arg(rebuild_ARG, '\0', "rebuild", pv_VAL, ARG_GROUPABLE, 0,
714 "Selects a PV to rebuild in a raid LV. Multiple PVs can be rebuilt by\n"
715 "repeating this option.\n"
36cac411 716 "Use this option in place of --resync or --syncaction repair when the\n"
5c779b32 717 "PVs with corrupted data are known, and their data should be reconstructed\n"
3d5182c8
DT
718 "rather than reconstructing default (rotating) data.\n"
719 "See \\fBlvmraid\\fP(7) for more information.\n")
5c779b32
DT
720
721arg(repair_ARG, '\0', "repair", 0, 0, 0,
3145a855 722 "#lvconvert\n"
5c779b32 723 "Replace failed PVs in a raid or mirror LV, or run a repair\n"
3d5182c8 724 "utility on a thin pool. See \\fBlvmraid\\fP(7) and \\fBlvmthin\\fP(7)\n"
3145a855
DT
725 "for more information.\n"
726 "#pvck\n"
727 "Repair headers and metadata on a PV.\n")
728
729arg(repairtype_ARG, '\0', "repairtype", repairtype_VAL, 0, 0,
730 "Repair headers and metadata on a PV. See command description.\n")
5c779b32
DT
731
732arg(replace_ARG, '\0', "replace", pv_VAL, ARG_GROUPABLE, 0,
733 "Replace a specific PV in a raid LV with another PV.\n"
734 "The new PV to use can be optionally specified after the LV.\n"
3d5182c8
DT
735 "Multiple PVs can be replaced by repeating this option.\n"
736 "See \\fBlvmraid\\fP(7) for more information.\n")
5c779b32 737
e6b6a09f 738arg(reportformat_ARG, '\0', "reportformat", reportformat_VAL, ARG_NONINTERACTIVE, 0,
5c779b32 739 "Overrides current output format for reports which is defined globally by\n"
0f87b015 740 "the report/output_format setting in \\fBlvm.conf\\fP(5).\n"
5c779b32
DT
741 "\\fBbasic\\fP is the original format with columns and rows.\n"
742 "If there is more than one report per command, each report is prefixed\n"
743 "with the report name for identification. \\fBjson\\fP produces report\n"
aa7cec61
PR
744 "output in JSON format. \\fBjson_std\\fP produces report output in\n"
745 "JSON format which is more compliant with JSON standard.\n"
746 "See \\fBlvmreport\\fP(7) for more information.\n")
5c779b32
DT
747
748arg(restorefile_ARG, '\0', "restorefile", string_VAL, 0, 0,
36cac411 749 "In conjunction with --uuid, this reads the file (produced by\n"
5c779b32
DT
750 "vgcfgbackup), extracts the location and size of the data on the PV,\n"
751 "and ensures that the metadata produced by the program is consistent\n"
752 "with the contents of the file, i.e. the physical extents will be in\n"
753 "the same place and not be overwritten by new metadata. This provides\n"
754 "a mechanism to upgrade the metadata format or to add/remove metadata\n"
755 "areas. Use with care.\n")
756
757arg(restoremissing_ARG, '\0', "restoremissing", 0, 0, 0,
758 "Add a PV back into a VG after the PV was missing and then returned,\n"
759 "e.g. due to a transient failure. The PV is not reinitialized.\n")
760
761arg(resync_ARG, '\0', "resync", 0, 0, 0,
762 "Initiates mirror synchronization. Synchronization generally happens\n"
763 "automatically, but this option forces it to run.\n"
36cac411 764 "Also see --rebuild to synchronize a specific PV.\n"
5c779b32
DT
765 "During synchronization, data is read from the primary mirror device\n"
766 "and copied to the others. This can take considerable time, during\n"
3d5182c8
DT
767 "which the LV is without a complete redundant copy of the data.\n"
768 "See \\fBlvmraid\\fP(7) for more information.\n")
5c779b32 769
c609dedc
DT
770arg(rootvg_ARG, '\0', "rootvg", 0, 0, 0,
771 "Import devices used for the root VG.\n")
772
5c779b32
DT
773arg(rows_ARG, '\0', "rows", 0, 0, 0,
774 "Output columns as rows.\n")
775
776arg(segments_ARG, '\0', "segments", 0, 0, 0,
777 "#pvs\n"
778 "Produces one line of output for each contiguous allocation of space on each\n"
779 "PV, showing the start (pvseg_start) and length (pvseg_size) in units of\n"
780 "physical extents.\n"
781 "#lvs\n"
782 "Use default columns that emphasize segment information.\n")
783
784arg(separator_ARG, '\0', "separator", string_VAL, 0, 0,
785 "String to use to separate each column. Useful if grepping the output.\n")
786
787arg(shared_ARG, '\0', "shared", 0, 0, 0,
788 "#vgcreate\n"
789 "Create a shared VG using lvmlockd if LVM is compiled with lockd support.\n"
790 "lvmlockd will select lock type sanlock or dlm depending on which lock\n"
791 "manager is running. This allows multiple hosts to share a VG on shared\n"
792 "devices. lvmlockd and a lock manager must be configured and running.\n"
a7a28bd9 793 "See \\fBlvmlockd\\fP(8) for more information about shared VGs.\n"
5c779b32
DT
794 "#vgs\n"
795 "#lvs\n"
796 "#pvs\n"
797 "#fullreport\n"
798 "#vgdisplay\n"
799 "#lvdisplay\n"
800 "#pvdisplay\n"
801 "Report/display shared VGs that would otherwise be skipped when\n"
802 "lvmlockd is not being used on the host.\n"
a7a28bd9 803 "See \\fBlvmlockd\\fP(8) for more information about shared VGs.\n")
5c779b32
DT
804
805arg(sinceversion_ARG, '\0', "sinceversion", string_VAL, 0, 0,
806 "Specify an LVM version in x.y.z format where x is the major version,\n"
807 "the y is the minor version and z is the patchlevel (e.g. 2.2.106).\n"
36cac411 808 "This option is currently applicable only with --typeconfig new\n"
5c779b32
DT
809 "to display all configuration settings introduced since given version.\n")
810
5c779b32
DT
811arg(splitcache_ARG, '\0', "splitcache", 0, 0, 0,
812 "Separates a cache pool from a cache LV, and keeps the unused cache pool LV.\n"
36cac411 813 "Before the separation, the cache is flushed. Also see --uncache.\n")
5c779b32
DT
814
815arg(splitmirrors_ARG, '\0', "splitmirrors", number_VAL, 0, 0,
816 "Splits the specified number of images from a raid1 or mirror LV\n"
36cac411 817 "and uses them to create a new LV. If --trackchanges is also specified,\n"
778ce8d8
DT
818 "changes to the raid1 LV are tracked while the split LV remains detached.\n"
819 "If --name is specified, then the images are permanently split from the\n"
820 "original LV and changes are not tracked.\n")
5c779b32
DT
821
822arg(splitsnapshot_ARG, '\0', "splitsnapshot", 0, 0, 0,
823 "Separates a COW snapshot from its origin LV. The LV that is split off\n"
824 "contains the chunks that differ from the origin LV along with metadata\n"
825 "describing them. This LV can be wiped and then destroyed with lvremove.\n")
826
827arg(showdeprecated_ARG, '\0', "showdeprecated", 0, 0, 0,
828 "Include deprecated configuration settings in the output. These settings\n"
829 "are deprecated after a certain version. If a concrete version is specified\n"
36cac411 830 "with --atversion, deprecated settings are automatically included\n"
5c779b32
DT
831 "if the specified version is lower than the version in which the settings were\n"
832 "deprecated. The current and diff types include deprecated settings\n"
833 "in their output by default, all the other types ignore deprecated settings.\n")
834
835arg(showunsupported_ARG, '\0', "showunsupported", 0, 0, 0,
836 "Include unsupported configuration settings in the output. These settings\n"
837 "are either used for debugging or development purposes only, or their support\n"
838 "is not yet complete and they are not meant to be used in production. The\n"
839 "current and diff types include unsupported settings in their\n"
840 "output by default, all the other types ignore unsupported settings.\n")
841
842arg(startpoll_ARG, '\0', "startpoll", 0, 0, 0,
843 "Start polling an LV to continue processing a conversion.\n")
844
93918a19 845arg(stripes_long_ARG, '\0', "stripes", number_VAL, ARG_LONG_OPT, 0,
5c779b32
DT
846 "Specifies the number of stripes in a striped LV. This is the number of\n"
847 "PVs (devices) that a striped LV is spread across. Data that\n"
848 "appears sequential in the LV is spread across multiple devices in units of\n"
36cac411 849 "the stripe size (see --stripesize). This does not apply to\n"
5c779b32
DT
850 "existing allocated space, only newly allocated space can be striped.\n")
851
852arg(swapmetadata_ARG, '\0', "swapmetadata", 0, 0, 0,
f88ce5fb
DT
853 "Extracts the metadata LV from a pool and replaces it with another specified LV.\n"
854 "The extracted LV is preserved and given the name of the LV that replaced it.\n"
855 "Use for repair only. When the metadata LV is swapped out of the pool, it can\n"
856 "be activated directly and used with thin provisioning tools:\n"
857 "\\fBcache_dump\\fP(8), \\fBcache_repair\\fP(8), \\fBcache_restore\\fP(8),\n"
858 "\\fBthin_dump\\fP(8), \\fBthin_repair\\fP(8), \\fBthin_restore\\fP(8).\n")
5c779b32
DT
859
860arg(syncaction_ARG, '\0', "syncaction", syncaction_VAL, 0, 0,
861 "Initiate different types of RAID synchronization.\n"
862 "This causes the RAID LV to read all data and parity\n"
863 "blocks in the array and check for discrepancies\n"
864 "(mismatches between mirrors or incorrect parity values).\n"
865 "\\fBcheck\\fP will count but not correct discrepancies.\n"
866 "\\fBrepair\\fP will correct discrepancies.\n"
0f87b015 867 "See \\fBlvs\\fP(8) for reporting discrepancies found or repaired.\n")
5c779b32
DT
868
869arg(sysinit_ARG, '\0', "sysinit", 0, 0, 0,
870 "Indicates that vgchange/lvchange is being invoked from early system initialisation\n"
871 "scripts (e.g. rc.sysinit or an initrd), before writable filesystems are\n"
872 "available. As such, some functionality needs to be disabled and this option\n"
873 "acts as a shortcut which selects an appropriate set of options. Currently,\n"
36cac411
HM
874 "this is equivalent to using --ignorelockingfailure, --ignoremonitoring,\n"
875 "--poll n, and setting env var LVM_SUPPRESS_LOCKING_FAILURE_MESSAGES.\n"
5c779b32
DT
876 "vgchange/lvchange skip autoactivation, and defer to pvscan autoactivation.\n")
877
878arg(systemid_ARG, '\0', "systemid", string_VAL, 0, 0,
879 "#vgcreate\n"
880 "Specifies the system ID that will be given to the new VG, overriding the\n"
881 "system ID of the host running the command. A VG is normally created\n"
882 "without this option, in which case the new VG is given the system ID of\n"
883 "the host creating it. Using this option requires caution because the\n"
884 "system ID of the new VG may not match the system ID of the host running\n"
885 "the command, leaving the VG inaccessible to the host.\n"
a7a28bd9 886 "See \\fBlvmsystemid\\fP(7) for more information.\n"
5c779b32 887 "#vgchange\n"
45c06025 888 "Changes the system ID of the VG. Using this option requires caution\n"
5c779b32
DT
889 "because the VG may become foreign to the host running the command,\n"
890 "leaving the host unable to access it.\n"
a7a28bd9 891 "See \\fBlvmsystemid\\fP(7) for more information.\n")
5c779b32
DT
892
893arg(thinpool_ARG, '\0', "thinpool", lv_VAL, 0, 0,
894 "The name of a thin pool LV.\n")
895
896arg(trackchanges_ARG, '\0', "trackchanges", 0, 0, 0,
36cac411 897 "Can be used with --splitmirrors on a raid1 LV. This causes\n"
5c779b32 898 "changes to the original raid1 LV to be tracked while the split images\n"
778ce8d8
DT
899 "remain detached. This is a temporary state that allows the read-only\n"
900 "detached image to be merged efficiently back into the raid1 LV later.\n"
901 "Only the regions with changed data are resynchronized during merge.\n"
902 "While a raid1 LV is tracking changes, operations on it are limited to\n"
903 "merging the split image (see --mergemirrors) or permanently splitting\n"
904 "the image (see --splitmirrors with --name.\n")
5c779b32 905
5c779b32 906arg(trustcache_ARG, '\0', "trustcache", 0, 0, 0,
0f350ba8 907 "No longer used.\n")
5c779b32
DT
908
909arg(type_ARG, '\0', "type", segtype_VAL, 0, 0,
3d5182c8
DT
910 "The LV type, also known as \"segment type\" or \"segtype\".\n"
911 "See usage descriptions for the specific ways to use these types.\n"
f80d3737
DT
912 "For more information about redundancy and performance (\\fBraid\\fP<N>, \\fBmirror\\fP, \\fBstriped\\fP, \\fBlinear\\fP) see \\fBlvmraid\\fP(7).\n"
913 "For thin provisioning (\\fBthin\\fP, \\fBthin-pool\\fP) see \\fBlvmthin\\fP(7).\n"
914 "For performance caching (\\fBcache\\fP, \\fBcache-pool\\fP) see \\fBlvmcache\\fP(7).\n"
915 "For copy-on-write snapshots (\\fBsnapshot\\fP) see usage definitions.\n"
59b87cf7 916 "For VDO (\\fBvdo\\fP) see \\fBlvmvdo\\fP(7).\n"
f80d3737
DT
917 "Several commands omit an explicit type option because the type\n"
918 "is inferred from other options or shortcuts\n"
59b87cf7 919 "(e.g. --stripes, --mirrors, --snapshot, --virtualsize, --thin, --cache, --vdo).\n"
f80d3737 920 "Use inferred types with care because it can lead to unexpected results.\n")
5c779b32 921
0b6782fa
DT
922arg(udevoutput_ARG, '\0', "udevoutput", 0, 0, 0,
923 "Command output is modified to be imported from a udev rule.\n")
924
5c779b32
DT
925arg(unbuffered_ARG, '\0', "unbuffered", 0, 0, 0,
926 "Produce output immediately without sorting or aligning the columns properly.\n")
927
928arg(uncache_ARG, '\0', "uncache", 0, 0, 0,
929 "Separates a cache pool from a cache LV, and deletes the unused cache pool LV.\n"
36cac411 930 "Before the separation, the cache is flushed. Also see --splitcache.\n")
5c779b32 931
83fe6e72
DT
932arg(update_ARG, '\0', "update", 0, 0, 0,
933 "Update the content of the devices file.\n")
934
5c779b32
DT
935arg(cachepolicy_ARG, '\0', "cachepolicy", string_VAL, 0, 0,
936 "Specifies the cache policy for a cache LV.\n"
3d5182c8 937 "See \\fBlvmcache\\fP(7) for more information.\n")
5c779b32
DT
938
939arg(cachesettings_ARG, '\0', "cachesettings", string_VAL, ARG_GROUPABLE, 0,
96c99d64
DT
940 "Specifies tunable kernel options for dm-cache or dm-writecache LVs.\n"
941 "Use the form 'option=value' or 'option1=value option2=value', or\n"
942 "repeat --cachesettings for each option being set.\n"
943 "These settings override the default kernel behaviors which are\n"
944 "usually adequate. To remove cachesettings and revert to the default\n"
945 "kernel behaviors, use --cachesettings 'default' for dm-cache or\n"
946 "an empty string --cachesettings '' for dm-writecache.\n"
3d5182c8 947 "See \\fBlvmcache\\fP(7) for more information.\n")
5c779b32
DT
948
949arg(unconfigured_ARG, '\0', "unconfigured", 0, 0, 0,
950 "Internal option used for generating config file during build.\n")
951
952arg(units_ARG, '\0', "units", units_VAL, 0, 0,
10cb8e0e 953 "All sizes are output in these units:\n"
13944738 954 "human-(r)eadable with '<' rounding indicator,\n"
10cb8e0e
DT
955 "(h)uman-readable, (b)ytes, (s)ectors, (k)ilobytes, (m)egabytes,\n"
956 "(g)igabytes, (t)erabytes, (p)etabytes, (e)xabytes.\n"
957 "Capitalise to use multiples of 1000 (S.I.) instead of 1024.\n"
36cac411 958 "Custom units can be specified, e.g. --units 3M.\n")
5c779b32
DT
959
960arg(unquoted_ARG, '\0', "unquoted", 0, 0, 0,
36cac411 961 "When used with --nameprefixes, output values in the field=value\n"
5c779b32
DT
962 "pairs are not quoted.\n")
963
964arg(usepolicies_ARG, '\0', "usepolicies", 0, 0, 0,
0f87b015 965 "Perform an operation according to the policy configured in \\fBlvm.conf\\fP(5)\n"
5c779b32
DT
966 "or a profile.\n")
967
968arg(validate_ARG, '\0', "validate", 0, 0, 0,
969 "Validate current configuration used and exit with appropriate\n"
970 "return code. The validation is done only for the configuration\n"
971 "at the front of the \"config cascade\". To validate the whole\n"
36cac411 972 "merged configuration tree, also use --mergedconfig.\n"
0f87b015 973 "The validation is done even if \\fBlvm.conf\\fP(5) \\fBconfig/checks\\fP is disabled.\n")
b4cc28c2
PR
974
975arg(valuesonly_ARG, '\0', "valuesonly", 0, 0, 0,
976 "When printing config settings, print only values without keys.\n")
5c779b32 977
96e9929f
ZK
978arg(vdo_ARG, '\0', "vdo", 0, 0, 0,
979 "Specifies the command is handling VDO LV.\n"
980 "See --type vdo.\n"
981 "See \\fBlvmvdo\\fP(7) for more information about VDO usage.\n")
982
983arg(vdopool_ARG, '\0', "vdopool", lv_VAL, 0, 0,
984 "The name of a VDO pool LV.\n"
985 "See \\fBlvmvdo\\fP(7) for more information about VDO usage.\n")
986
5e060b8f
ZK
987arg(vdosettings_ARG, '\0', "vdosettings", string_VAL, ARG_GROUPABLE, 0,
988 "Specifies tunable VDO options for VDO LVs.\n"
989 "Use the form 'option=value' or 'option1=value option2=value', or\n"
990 "repeat --vdosettings for each option being set.\n"
991 "These settings override the default VDO behaviors.\n"
992 "To remove vdosettings and revert to the default\n"
993 "VDO behaviors, use --vdosettings 'default'.\n"
994 "See \\fBlvmvdo\\fP(7) for more information.\n")
995
5c779b32
DT
996arg(version_ARG, '\0', "version", 0, 0, 0,
997 "Display version information.\n")
998
999arg(vgmetadatacopies_ARG, '\0', "vgmetadatacopies", vgmetadatacopies_VAL, 0, 0,
1000 "Number of copies of the VG metadata that are kept.\n"
1001 "VG metadata is kept in VG metadata areas on PVs in the VG,\n"
1002 "i.e. reserved space at the start and/or end of the PVs.\n"
1003 "Keeping a copy of the VG metadata on every PV can reduce performance\n"
1004 "in VGs containing a large number of PVs.\n"
1005 "When this number is set to a non-zero value, LVM will automatically\n"
1006 "choose PVs on which to store metadata, using the metadataignore flags\n"
1007 "on PVs to achieve the specified number.\n"
1008 "The number can also be replaced with special string values:\n"
1009 "\\fBunmanaged\\fP causes LVM to not automatically manage the PV\n"
1010 "metadataignore flags.\n"
1011 "\\fBall\\fP causes LVM to first clear the metadataignore flags on\n"
1012 "all PVs, and then to become unmanaged.\n")
1013
0b6782fa
DT
1014arg(vgonline_ARG, '\0', "vgonline", 0, 0, 0,
1015 "The first command to see a complete VG will report it uniquely.\n"
1016 "Other commands to see the complete VG will report it differently.\n")
1017
5c779b32
DT
1018arg(withsummary_ARG, '\0', "withsummary", 0, 0, 0,
1019 "Display a one line comment for each configuration node.\n")
1020
1021arg(withcomments_ARG, '\0', "withcomments", 0, 0, 0,
1022 "Display a full comment for each configuration node. For deprecated\n"
1023 "settings, also display comments about deprecation.\n")
1024
fe423ef5
AK
1025arg(withgeneralpreamble_ARG, '\0', "withgeneralpreamble", 0, 0, 0,
1026 "Include general config file preamble.\n")
1027
1028arg(withlocalpreamble_ARG, '\0', "withlocalpreamble", 0, 0, 0,
1029 "Include local config file preamble.\n")
1030
5c779b32
DT
1031arg(withspaces_ARG, '\0', "withspaces", 0, 0, 0,
1032 "Where appropriate, add more spaces in output for better readability.\n")
1033
1034arg(withversions_ARG, '\0', "withversions", 0, 0, 0,
1035 "Also display a comment containing the version of introduction for\n"
1036 "each configuration node. If the setting is deprecated, also display\n"
1037 "the version since which it is deprecated.\n")
1038
1039arg(writebehind_ARG, '\0', "writebehind", number_VAL, 0, 0,
1040 "The maximum number of outstanding writes that are allowed to\n"
1041 "devices in a RAID1 LV that is marked write-mostly.\n"
1042 "Once this value is exceeded, writes become synchronous (i.e. all writes\n"
1043 "to the constituent devices must complete before the array signals the\n"
1044 "write has completed). Setting the value to zero clears the preference\n"
1045 "and allows the system to choose the value arbitrarily.\n")
1046
1047arg(writemostly_ARG, '\0', "writemostly", writemostly_VAL, ARG_GROUPABLE, 0,
1048 "Mark a device in a RAID1 LV as write-mostly. All reads\n"
1049 "to these drives will be avoided unless absolutely necessary. This keeps\n"
1050 "the number of I/Os to the drive to a minimum. The default behavior is to\n"
1051 "set the write-mostly attribute for the specified PV.\n"
1052 "It is also possible to remove the write-mostly flag by adding the\n"
1053 "suffix \\fB:n\\fP at the end of the PV name, or to toggle the value with\n"
1054 "the suffix \\fB:t\\fP. Repeat this option to change the attribute on\n"
1055 "multiple PVs.\n")
269930c0 1056
f067c0ad
DT
1057/*
1058 * Synonyms of other options.
1059 *
1060 * Only the standard option names are used in command definitions.
1061 *
1062 * If used on the command line, lvm automatically translates them
1063 * to the standard option name.
1064 *
1065 * The generated help and man output does not include
1066 * these variants. The description of the standard option names
1067 * can mention a synonym, or in some cases the man page generation
1068 * recognizes some of these and prints the option name to include
36cac411 1069 * the variant, e.g. man page generation prints --[raid]writebehind.
f067c0ad
DT
1070 */
1071arg(corelog_ARG, '\0', "corelog", 0, 0, 0, NULL)
1072arg(resizable_ARG, '\0', "resizable", bool_VAL, 0, 0, NULL)
5c779b32
DT
1073arg(allocation_ARG, '\0', "allocation", bool_VAL, 0, 0, NULL)
1074arg(available_ARG, '\0', "available", activation_VAL, 0, 0, NULL)
f067c0ad
DT
1075arg(raidrebuild_ARG, '\0', "raidrebuild", pv_VAL, ARG_GROUPABLE, 0, NULL)
1076arg(raidsyncaction_ARG, '\0', "raidsyncaction", syncaction_VAL, 0, 0, NULL)
1077arg(raidwritemostly_ARG, '\0', "raidwritemostly", writemostly_VAL, ARG_GROUPABLE, 0, NULL)
1078arg(raidminrecoveryrate_ARG, '\0', "raidminrecoveryrate", sizekb_VAL, 0, 0, NULL)
1079arg(raidmaxrecoveryrate_ARG, '\0', "raidmaxrecoveryrate", sizekb_VAL, 0, 0, NULL)
1080arg(raidwritebehind_ARG, '\0', "raidwritebehind", number_VAL, 0, 0, NULL)
1081arg(virtualoriginsize_ARG, '\0', "virtualoriginsize", sizemb_VAL, 0, 0, NULL)
1082arg(split_ARG, '\0', "split", 0, 0, 0, NULL)
1083arg(metadatacopies_ARG, '\0', "metadatacopies", metadatacopies_VAL, 0, 0, NULL)
1084
b80f32dd 1085
8a6d1dd4
JT
1086/*
1087 * ... and now the short args.
1088 */
5c779b32 1089arg(activate_ARG, 'a', "activate", activation_VAL, 0, 0,
b869db30
DT
1090 "#pvscan\n"
1091 "Auto-activate LVs in a VG when the PVs scanned have completed the VG.\n"
1092 "(Only \\fBay\\fP is applicable.)\n"
5c779b32
DT
1093 "#lvchange\n"
1094 "#vgchange\n"
1095 "Change the active state of LVs.\n"
1096 "An active LV can be used through a block device,\n"
1097 "allowing data on the LV to be accessed.\n"
1098 "\\fBy\\fP makes LVs active, or available.\n"
1099 "\\fBn\\fP makes LVs inactive, or unavailable.\n"
1100 "The block device for the LV is added or removed from the system\n"
1101 "using device-mapper in the kernel.\n"
1102 "A symbolic link /dev/VGName/LVName pointing to the device node is also added/removed.\n"
1103 "All software and scripts should access the device through the symbolic\n"
1104 "link and present this as the name of the device.\n"
1105 "The location and name of the underlying device node may depend on\n"
1106 "the distribution, configuration (e.g. udev), or release version.\n"
0a28e3c4 1107 "\\fBay\\fP specifies autoactivation, which is used by system-generated\n"
45c06025 1108 "activation commands. By default, LVs are autoactivated.\n"
0a28e3c4
DT
1109 "An autoactivation property can be set on a VG or LV to disable autoactivation,\n"
1110 "see --setautoactivation y|n in vgchange, lvchange, vgcreate, and lvcreate.\n"
1111 "Display the property with vgs or lvs \"-o autoactivation\".\n"
0f87b015 1112 "The \\fBlvm.conf\\fP(5) auto_activation_volume_list includes names of VGs or LVs\n"
0a28e3c4
DT
1113 "that should be autoactivated, and anything not listed is not autoactivated.\n"
1114 "When auto_activation_volume_list is undefined (the default), it has no effect.\n"
1115 "If auto_activation_volume_list is defined and empty, no LVs are autoactivated.\n"
1116 "Items included by auto_activation_volume_list will not be autoactivated if\n"
1117 "the autoactivation property has been disabled.\n"
a7a28bd9 1118 "See \\fBlvmlockd\\fP(8) for more information about activation options \\fBey\\fP and \\fBsy\\fP for shared VGs.\n"
5c779b32
DT
1119 "#lvcreate\n"
1120 "Controls the active state of the new LV.\n"
1121 "\\fBy\\fP makes the LV active, or available.\n"
1122 "New LVs are made active by default.\n"
1123 "\\fBn\\fP makes the LV inactive, or unavailable, only when possible.\n"
1124 "In some cases, creating an LV requires it to be active.\n"
1125 "For example, COW snapshots of an active origin LV can only\n"
19a72e60 1126 "be created in the active state (this does not apply to thin snapshots).\n"
36cac411 1127 "The --zero option normally requires the LV to be active.\n"
5c779b32 1128 "If autoactivation \\fBay\\fP is used, the LV is only activated\n"
0f87b015 1129 "if it matches an item in \\fBlvm.conf\\fP(5) \\fBactivation/auto_activation_volume_list\\fP.\n"
36cac411 1130 "\\fBay\\fP implies --zero n and --wipesignatures n.\n"
970f49dc 1131 "See \\fBlvmlockd\\fP(8) for more information about activation options for shared VGs.\n")
5c779b32
DT
1132
1133arg(all_ARG, 'a', "all", 0, 0, 0,
1134 "#vgreduce\n"
1135 "Removes all empty PVs if none are named on the command line.\n"
27736676
DT
1136 "#pvchange\n"
1137 "Change all visible PVs.\n"
892f3b10
DT
1138 "#vgimport\n"
1139 "Import all visible VGs.\n"
5c779b32
DT
1140 "#lvscan\n"
1141 "#lvdisplay\n"
1142 "#lvs\n"
1143 "Show information about internal LVs.\n"
1144 "These are components of normal LVs, such as mirrors,\n"
1145 "which are not independently accessible, e.g. not mountable.\n"
1146 "#vgs\n"
1147 "List all VGs. Equivalent to not specifying any VGs.\n"
1148 "#pvs\n"
1149 "#pvdisplay\n"
1150 "Show information about devices that have not been initialized\n"
1151 "by LVM, i.e. they are not PVs.\n")
1152
1153arg(autobackup_ARG, 'A', "autobackup", bool_VAL, 0, 0,
1154 "Specifies if metadata should be backed up automatically after a change.\n"
a7a28bd9 1155 "Enabling this is strongly advised! See \\fBvgcfgbackup\\fP(8) for more information.\n")
5c779b32
DT
1156
1157arg(activevolumegroups_ARG, 'A', "activevolumegroups", 0, 0, 0,
1158 "Only select active VGs. The VG is considered active\n"
1159 "if at least one of its LVs is active.\n")
1160
62228474
DT
1161arg(allpvs_ARG, 'A', "allpvs", 0, 0, 0,
1162 "#pvs\n"
1163 "Show information about PVs outside the devices file.\n"
82f187ce 1164 "Combine with -a|--all to include devices that are not PVs.\n"
62228474
DT
1165 "#pvscan\n"
1166 "Show information about PVs outside the devices file.\n"
1167 "Displays the device ID for PVs included in the devices file.\n")
1168
5c779b32
DT
1169arg(background_ARG, 'b', "background", 0, 0, 0,
1170 "If the operation requires polling, this option causes the command to\n"
1171 "return before the operation is complete, and polling is done in the\n"
1172 "background.\n")
1173
5c779b32
DT
1174arg(basevgname_ARG, 'n', "basevgname", string_VAL, 0, 0,
1175 "By default the snapshot VG will be renamed to the original name plus a\n"
1176 "numeric suffix to avoid duplicate naming (e.g. 'test_vg' would be renamed\n"
1177 "to 'test_vg1'). This option will override the base VG name that is\n"
1178 "used for all VG renames. If a VG already exists with the specified name\n"
1179 "a numeric suffix will be added (like the previous example) to make it unique.\n")
1180
1181arg(blockdevice_ARG, 'b', "blockdevice", 0, 0, 0,
1182 "No longer used.\n")
1183
1184arg(chunksize_ARG, 'c', "chunksize", sizekb_VAL, 0, 0,
1185 "The size of chunks in a snapshot, cache pool or thin pool.\n"
fe6fb1ec 1186 "For snapshots, the value must be a power of 2 between 4 KiB and 512 KiB\n"
5c779b32 1187 "and the default value is 4.\n"
fe6fb1ec 1188 "For a cache pool the value must be between 32 KiB and 1 GiB\n"
5c779b32 1189 "and the default value is 64.\n"
fe6fb1ec 1190 "For a thin pool the value must be between 64 KiB and 1 GiB\n"
5c779b32 1191 "and the default value starts with 64 and scales up to fit the\n"
fe6fb1ec
ZK
1192 "pool metadata size within 128 MiB, if the pool metadata size is not specified.\n"
1193 "The value must be a multiple of 64 KiB.\n"
3d5182c8 1194 "See \\fBlvmthin\\fP(7) and \\fBlvmcache\\fP(7) for more information.\n")
5c779b32
DT
1195
1196arg(clustered_ARG, 'c', "clustered", bool_VAL, 0, 0,
3e781ea4
DT
1197 "This option was specific to clvm and is now replaced by\n"
1198 "the --shared option with \\fBlvmlockd\\fP(8).\n")
5c779b32
DT
1199
1200arg(colon_ARG, 'c', "colon", 0, 0, 0,
1201 "Generate colon separated output for easier parsing in scripts or programs.\n"
a7a28bd9 1202 "Also see \\fBvgs\\fP(8) which provides considerably more control over the output.\n")
5c779b32
DT
1203
1204arg(columns_ARG, 'C', "columns", 0, 0, 0,
a7a28bd9
DT
1205 "Display output in columns, the equivalent of \\fBvgs\\fP(8).\n"
1206 "Options listed are the same as options given in \\fBvgs\\fP(8).\n")
5c779b32
DT
1207
1208arg(contiguous_ARG, 'C', "contiguous", bool_VAL, 0, 0,
1209 "Sets or resets the contiguous allocation policy for LVs.\n"
1210 "Default is no contiguous allocation based on a next free principle.\n"
1211 "It is only possible to change a non-contiguous allocation policy\n"
1212 "to contiguous if all of the allocated physical extents in the LV\n"
1213 "are already contiguous.\n")
1214
1215arg(debug_ARG, 'd', "debug", 0, ARG_COUNTABLE, 0,
1216 "Set debug level. Repeat from 1 to 6 times to increase the detail of\n"
1217 "messages sent to the log file and/or syslog (if configured).\n")
1218
1219arg(exported_ARG, 'e', "exported", 0, 0, 0,
1220 "Only show PVs belonging to exported VGs.\n")
1221
1222/* Not used. */
1223arg(physicalextent_ARG, 'E', "physicalextent", 0, 0, 0, NULL)
1224
1225arg(file_ARG, 'f', "file", string_VAL, 0, 0,
3145a855
DT
1226 "#pvck\n"
1227 "Metadata file to read or write.\n"
5c779b32
DT
1228 "#lvmconfig\n"
1229 "#dumpconfig\n"
1230 "#config\n"
1231 "Write output to the named file.\n"
1232 "#vgcfgbackup\n"
1233 "Write the backup to the named file.\n"
1234 "When backing up more than one VG, the file name is\n"
1235 "treated as a template, and %s is replaced by the VG name.\n"
1236 "#vgcfgrestore\n"
1237 "Read metadata backup from the named file.\n"
1238 "Usually this file was created by vgcfgbackup.\n")
1239
1240arg(force_ARG, 'f', "force", 0, ARG_COUNTABLE, 0,
1241 "Override various checks, confirmations and protections.\n"
1242 "Use with extreme caution.\n")
1243
1244/* Not used. */
1245arg(full_ARG, 'f', "full", 0, 0, 0, NULL)
1246
f46b28bd
DT
1247arg(help_ARG, 'h', "help", 0, 0, 0,
1248 "Display help text.\n")
5c779b32
DT
1249
1250arg(cache_ARG, 'H', "cache", 0, 0, 0,
1251 "Specifies the command is handling a cache LV or cache pool.\n"
36cac411 1252 "See --type cache and --type cache-pool.\n"
3d5182c8 1253 "See \\fBlvmcache\\fP(7) for more information about LVM caching.\n")
5c779b32
DT
1254
1255arg(history_ARG, 'H', "history", 0, 0, 0,
1256 "Include historical LVs in the output.\n"
1257 "(This has no effect unless LVs were removed while\n"
0f87b015 1258 "\\fBlvm.conf\\fP(5) \\fBmetadata/record_lvs_history\\fP was enabled.\n")
5c779b32
DT
1259
1260/* Not used */
1261arg(help2_ARG, '?', "", 0, 0, 0, NULL)
1262
1263arg(import_ARG, 'i', "import", 0, 0, 0,
1264 "Import exported VGs. Otherwise VGs that have been exported\n"
1265 "will not be changed (nor will their associated PVs).\n")
1266
1267arg(interval_ARG, 'i', "interval", number_VAL, 0, 0,
1268 "Report progress at regular intervals.\n")
1269
1270/* Not used */
1271arg(iop_version_ARG, 'i', "iop_version", 0, 0, 0, NULL)
1272
1273arg(stripes_ARG, 'i', "stripes", number_VAL, 0, 0,
1274 "Specifies the number of stripes in a striped LV. This is the number of\n"
1275 "PVs (devices) that a striped LV is spread across. Data that\n"
1276 "appears sequential in the LV is spread across multiple devices in units of\n"
36cac411 1277 "the stripe size (see --stripesize). This does not change existing\n"
0b019c54 1278 "allocated space, but only applies to space being allocated by the command.\n"
5c779b32
DT
1279 "When creating a RAID 4/5/6 LV, this number does not include the extra\n"
1280 "devices that are required for parity. The largest number depends on\n"
0b019c54
DT
1281 "the RAID type (raid0: 64, raid10: 32, raid4/5: 63, raid6: 62), and\n"
1282 "when unspecified, the default depends on the RAID type\n"
19a72e60 1283 "(raid0: 2, raid10: 2, raid4/5: 3, raid6: 5.)\n"
0b019c54 1284 "To stripe a new raid LV across all PVs by default,\n"
0f87b015 1285 "see \\fBlvm.conf\\fP(5) \\fBallocation/raid_stripe_all_devices\\fP.\n")
5c779b32
DT
1286
1287arg(stripesize_ARG, 'I', "stripesize", sizekb_VAL, 0, 0,
1288 "The amount of data that is written to one device before\n"
1289 "moving to the next in a striped LV.\n")
1290
8152e4a9 1291arg(logicalvolume_ARG, 'l', "logicalvolume", uint32_VAL, 0, 0,
5c779b32
DT
1292 "Sets the maximum number of LVs allowed in a VG.\n")
1293
8152e4a9 1294arg(maxlogicalvolumes_ARG, 'l', "maxlogicalvolumes", uint32_VAL, 0, 0,
5c779b32
DT
1295 "Sets the maximum number of LVs allowed in a VG.\n")
1296
a6a2788e 1297/*
01d5e4d1 1298 * The extents_VAL is overridden in configure_command_option_values()
a6a2788e
DT
1299 * according to the command being run. Different commands accept
1300 * different signs with the value.
1301 */
74ba3260 1302arg(extents_ARG, 'l', "extents", extents_VAL, 0, 0,
5c779b32
DT
1303 "#lvcreate\n"
1304 "Specifies the size of the new LV in logical extents.\n"
36cac411 1305 "The --size and --extents options are alternate methods of specifying size.\n"
5c779b32
DT
1306 "The total number of physical extents used will be\n"
1307 "greater when redundant data is needed for RAID levels.\n"
1308 "An alternate syntax allows the size to be determined indirectly\n"
1309 "as a percentage of the size of a related VG, LV, or set of PVs. The\n"
1310 "suffix \\fB%VG\\fP denotes the total size of the VG, the suffix \\fB%FREE\\fP\n"
1311 "the remaining free space in the VG, and the suffix \\fB%PVS\\fP the free\n"
1312 "space in the specified PVs. For a snapshot, the size\n"
1313 "can be expressed as a percentage of the total size of the origin LV\n"
1314 "with the suffix \\fB%ORIGIN\\fP (\\fB100%ORIGIN\\fP provides space for\n"
1315 "the whole origin).\n"
1316 "When expressed as a percentage, the size defines an upper limit for the\n"
1317 "number of logical extents in the new LV. The precise number of logical\n"
1318 "extents in the new LV is not determined until the command has completed.\n"
1319 "#lvreduce\n"
1320 "#lvextend\n"
1321 "#lvresize\n"
1322 "Specifies the new size of the LV in logical extents.\n"
36cac411 1323 "The --size and --extents options are alternate methods of specifying size.\n"
5c779b32
DT
1324 "The total number of physical extents used will be\n"
1325 "greater when redundant data is needed for RAID levels.\n"
1326 "An alternate syntax allows the size to be determined indirectly\n"
1327 "as a percentage of the size of a related VG, LV, or set of PVs. The\n"
1328 "suffix \\fB%VG\\fP denotes the total size of the VG, the suffix \\fB%FREE\\fP\n"
1329 "the remaining free space in the VG, and the suffix \\fB%PVS\\fP the free\n"
1330 "space in the specified PVs. For a snapshot, the size\n"
1331 "can be expressed as a percentage of the total size of the origin LV\n"
1332 "with the suffix \\fB%ORIGIN\\fP (\\fB100%ORIGIN\\fP provides space for\n"
1333 "the whole origin).\n"
1334 "When expressed as a percentage, the size defines an upper limit for the\n"
1335 "number of logical extents in the new LV. The precise number of logical\n"
1336 "extents in the new LV is not determined until the command has completed.\n"
a6a2788e
DT
1337 "When the plus \\fB+\\fP or minus \\fB-\\fP prefix is used,\n"
1338 "the value is not an absolute size, but is relative and added or subtracted\n"
1339 "from the current size.\n")
5c779b32
DT
1340
1341arg(list_ARG, 'l', "list", 0, 0, 0,
1342 "#lvmconfig\n"
1343 "#dumpconfig\n"
1344 "#config\n"
1345 "List config settings with summarizing comment. This is the same as using\n"
36cac411 1346 "options --typeconfig list --withsummary.\n"
5c779b32
DT
1347 "#vgcfgrestore\n"
1348 "List metadata backup and archive files pertaining to the VG.\n"
36cac411 1349 "May be used with --file. Does not restore the VG.\n"
5c779b32 1350 "#vgmerge\n"
36cac411 1351 "Display merged destination VG like vgdisplay -v.\n")
5c779b32
DT
1352
1353arg(lvmpartition_ARG, 'l', "lvmpartition", 0, 0, 0,
1354 "Only report PVs.\n")
1355
9a50df29 1356/*
01d5e4d1 1357 * The sizemb_VAL is overridden in configure_command_option_values()
a6a2788e
DT
1358 * according to the command being run. Different commands accept
1359 * different signs with the value.
9a50df29 1360 */
a6a2788e 1361arg(size_ARG, 'L', "size", sizemb_VAL, 0, 0,
5c779b32
DT
1362 "#lvcreate\n"
1363 "Specifies the size of the new LV.\n"
36cac411 1364 "The --size and --extents options are alternate methods of specifying size.\n"
5c779b32
DT
1365 "The total number of physical extents used will be\n"
1366 "greater when redundant data is needed for RAID levels.\n"
5c779b32
DT
1367 "#lvreduce\n"
1368 "#lvextend\n"
1369 "#lvresize\n"
1370 "Specifies the new size of the LV.\n"
36cac411 1371 "The --size and --extents options are alternate methods of specifying size.\n"
5c779b32
DT
1372 "The total number of physical extents used will be\n"
1373 "greater when redundant data is needed for RAID levels.\n"
a6a2788e
DT
1374 "When the plus \\fB+\\fP or minus \\fB-\\fP prefix is used,\n"
1375 "the value is not an absolute size, but is relative and added or subtracted\n"
1376 "from the current size.\n")
5c779b32
DT
1377
1378arg(persistent_ARG, 'M', "persistent", bool_VAL, 0, 0,
1379 "When yes, makes the specified minor number persistent.\n")
1380
1381arg(major_ARG, 'j', "major", number_VAL, ARG_GROUPABLE, 0,
1382 "#lvcreate\n"
1383 "#lvchange\n"
1384 "Sets the major number of an LV block device.\n"
1385 "#pvscan\n"
1386 "The major number of a device.\n")
1387
1388arg(setactivationskip_ARG, 'k', "setactivationskip", bool_VAL, 0, 0,
1389 "Persistently sets (yes) or clears (no) the \"activation skip\" flag on an LV.\n"
1390 "An LV with this flag set is not activated unless the\n"
36cac411 1391 "--ignoreactivationskip option is used by the activation command.\n"
5c779b32
DT
1392 "This flag is set by default on new thin snapshot LVs.\n"
1393 "The flag is not applied to deactivation.\n"
1394 "The current value of the flag is indicated in the lvs lv_attr bits.\n")
1395
1396arg(ignoreactivationskip_ARG, 'K', "ignoreactivationskip", 0, 0, 0,
1397 "Ignore the \"activation skip\" LV flag during activation\n"
1398 "to allow LVs with the flag set to be activated.\n")
1399
78d14a80
DT
1400arg(integritysettings_ARG, '\0', "integritysettings", string_VAL, ARG_GROUPABLE, 0,
1401 "Specifies tunable kernel options for dm-integrity.\n"
1402 "See \\fBlvmraid\\fP(7) for more information.\n")
1403
5c779b32
DT
1404arg(maps_ARG, 'm', "maps", 0, 0, 0,
1405 "#lvdisplay\n"
1406 "Display the mapping of logical extents to PVs and physical extents.\n"
1407 "To map physical extents to logical extents use:\n"
36cac411 1408 "pvs --segments -o+lv_name,seg_start_pe,segtype\n"
5c779b32
DT
1409 "#pvdisplay\n"
1410 "Display the mapping of physical extents to LVs and logical extents.\n")
1411
1412/* FIXME: should the unused mirrors option be removed from lvextend? */
1413
c8671f6f 1414arg(mirrors_ARG, 'm', "mirrors", number_VAL, 0, 0,
5c779b32
DT
1415 "#lvcreate\n"
1416 "Specifies the number of mirror images in addition to the original LV\n"
36cac411 1417 "image, e.g. --mirrors 1 means there are two images of the data, the\n"
5c779b32
DT
1418 "original and one mirror image.\n"
1419 "Optional positional PV args on the command line can specify the devices\n"
1420 "the images should be placed on.\n"
1421 "There are two mirroring implementations: \"raid1\" and \"mirror\".\n"
1422 "These are the names of the corresponding LV types, or \"segment types\".\n"
36cac411 1423 "Use the --type option to specify which to use (raid1 is default,\n"
5c779b32 1424 "and mirror is legacy)\n"
0f87b015 1425 "Use \\fBlvm.conf\\fP(5) \\fBglobal/mirror_segtype_default\\fP and\n"
5c779b32 1426 "global/raid10_segtype_default to configure the default types.\n"
36cac411 1427 "See the --nosync option for avoiding initial image synchronization.\n"
3d5182c8 1428 "See \\fBlvmraid\\fP(7) for more information.\n"
5c779b32
DT
1429 "#lvconvert\n"
1430 "Specifies the number of mirror images in addition to the original LV\n"
36cac411 1431 "image, e.g. --mirrors 1 means there are two images of the data, the\n"
5c779b32
DT
1432 "original and one mirror image.\n"
1433 "Optional positional PV args on the command line can specify the devices\n"
1434 "the images should be placed on.\n"
1435 "There are two mirroring implementations: \"raid1\" and \"mirror\".\n"
1436 "These are the names of the corresponding LV types, or \"segment types\".\n"
36cac411 1437 "Use the --type option to specify which to use (raid1 is default,\n"
5c779b32 1438 "and mirror is legacy)\n"
0f87b015 1439 "Use \\fBlvm.conf\\fP(5) \\fBglobal/mirror_segtype_default\\fP and\n"
5c779b32
DT
1440 "global/raid10_segtype_default to configure the default types.\n"
1441 "The plus prefix \\fB+\\fP can be used, in which case\n"
1442 "the number is added to the current number of images,\n"
1443 "or the minus prefix \\fB-\\fP can be used, in which case\n"
1444 "the number is subtracted from the current number of images.\n"
3d5182c8 1445 "See \\fBlvmraid\\fP(7) for more information.\n"
5c779b32
DT
1446 "#lvextend\n"
1447 "Not used.\n")
1448
1449arg(metadatatype_ARG, 'M', "metadatatype", metadatatype_VAL, 0, 0,
1450 "Specifies the type of on-disk metadata to use.\n"
1451 "\\fBlvm2\\fP (or just \\fB2\\fP) is the current, standard format.\n"
c1cd18f2 1452 "\\fBlvm1\\fP (or just \\fB1\\fP) is no longer used.\n")
5c779b32
DT
1453
1454arg(name_ARG, 'n', "name", string_VAL, 0, 0,
1455 "#lvcreate\n"
1456 "#lvconvert\n"
1457 "Specifies the name of a new LV.\n"
1458 "When unspecified, a default name of \"lvol#\" is\n"
1459 "generated, where # is a number generated by LVM.\n"
1460 "#pvmove\n"
1461 "Move only the extents belonging to the named LV.\n"
1462 "#vgsplit\n"
1463 "Move only PVs used by the named LV.\n")
1464
1465arg(nofsck_ARG, 'n', "nofsck", 0, 0, 0,
264827cb 1466 "Do not perform fsck when resizing the file system with --resizefs.\n")
5c779b32
DT
1467
1468arg(novolumegroup_ARG, 'n', "novolumegroup", 0, 0, 0,
1469 "Only show PVs not belonging to any VG.\n")
1470
1471/* Not used */
1472arg(oldpath_ARG, 'n', "oldpath", 0, 0, 0, NULL)
1473
1474/*
1475 * FIXME: a free-form discussion section and document the
1476 * VG/LV/PV attr bits which were previously listed
36cac411 1477 * in the description for -o.
5c779b32
DT
1478 */
1479
1480arg(options_ARG, 'o', "options", string_VAL, ARG_GROUPABLE, 0,
1481 "Comma-separated, ordered list of fields to display in columns.\n"
0f87b015 1482 "String arg syntax is: [\\fB+\\fP|\\fB-\\fP|\\fB#\\fP]\\fIField1\\fP[\\fB,\\fP\\fIField2\\fP ...]\n"
5c779b32
DT
1483 "The prefix \\fB+\\fP will append the specified fields to the default fields,\n"
1484 "\\fB-\\fP will remove the specified fields from the default fields, and\n"
1485 "\\fB#\\fP will compact specified fields (removing them when empty for all rows.)\n"
1486 "Use \\fB-o help\\fP to view the list of all available fields.\n"
36cac411
HM
1487 "Use separate lists of fields to add, remove or compact by repeating the -o option:\n"
1488 "-o+field1,field2 -o-field3,field4 -o#field5.\n"
5c779b32
DT
1489 "These lists are evaluated from left to right.\n"
1490 "Use field name \\fBlv_all\\fP to view all LV fields,\n"
1491 "\\fBvg_all\\fP all VG fields,\n"
1492 "\\fBpv_all\\fP all PV fields,\n"
1493 "\\fBpvseg_all\\fP all PV segment fields,\n"
1494 "\\fBseg_all\\fP all LV segment fields, and\n"
1495 "\\fBpvseg_all\\fP all PV segment columns.\n"
0f87b015 1496 "See the \\fBlvm.conf\\fP(5) report section for more config options.\n"
a7a28bd9 1497 "See \\fBlvmreport\\fP(7) for more information about reporting.\n")
5c779b32
DT
1498
1499arg(sort_ARG, 'O', "sort", string_VAL, ARG_GROUPABLE, 0,
1500 "Comma-separated ordered list of columns to sort by. Replaces the default\n"
1501 "selection. Precede any column with \\fB-\\fP for a reverse sort on that column.\n")
1502
1503arg(maxphysicalvolumes_ARG, 'p', "maxphysicalvolumes", uint32_VAL, 0, 0,
1504 "Sets the maximum number of PVs that can belong to the VG.\n"
1505 "The value 0 removes any limitation.\n"
36cac411
HM
1506 "For large numbers of PVs, also see options --pvmetadatacopies,\n"
1507 "and --vgmetadatacopies for improving performance.\n")
5c779b32
DT
1508
1509arg(permission_ARG, 'p', "permission", permission_VAL, 0, 0,
1510 "Set access permission to read only \\fBr\\fP or read and write \\fBrw\\fP.\n")
1511
5c779b32 1512arg(partial_ARG, 'P', "partial", 0, 0, 0,
51ff707a
DT
1513 "Commands will do their best to activate LVs with missing PV extents.\n"
1514 "Missing extents may be replaced with error or zero segments\n"
0f87b015 1515 "according to the missing_stripe_filler setting.\n"
51ff707a 1516 "Metadata may not be changed with this option.\n")
5c779b32
DT
1517
1518/* Not used */
1519arg(physicalvolume_ARG, 'P', "physicalvolume", 0, 0, 0, NULL)
1520
1521arg(quiet_ARG, 'q', "quiet", 0, ARG_COUNTABLE, 0,
36cac411 1522 "Suppress output and log messages. Overrides --debug and --verbose.\n"
b9d10857 1523 "Repeat once to also suppress any prompts with answer 'no'.\n")
5c779b32
DT
1524
1525arg(readahead_ARG, 'r', "readahead", readahead_VAL, 0, 0,
1526 "Sets read ahead sector count of an LV.\n"
1527 "\\fBauto\\fP is the default which allows the kernel to choose\n"
1528 "a suitable value automatically.\n"
1529 "\\fBnone\\fP is equivalent to zero.\n")
1530
1531arg(resizefs_ARG, 'r', "resizefs", 0, 0, 0,
264827cb
DT
1532 "Resize the fs using the fs-specific resize command.\n"
1533 "May include mounting, unmounting, or running fsck. See --fsmode to control\n"
1534 "mounting behavior, and --nofsck to disable fsck. See --fs for more options\n"
1535 "(--resizefs is equivalent to --fs resize.)\n")
5c779b32
DT
1536
1537/* Not used */
1538arg(reset_ARG, 'R', "reset", 0, 0, 0, NULL)
1539
73235573 1540arg(regionsize_ARG, 'R', "regionsize", regionsizemb_VAL, 0, 0,
f9d28f1a 1541 "Size of each raid or mirror synchronization region.\n"
0f87b015 1542 "\\fBlvm.conf\\fP(5) \\fBactivation/raid_region_size\\fP can be used to\n"
f9d28f1a 1543 "configure a default.\n")
5c779b32
DT
1544
1545arg(physicalextentsize_ARG, 's', "physicalextentsize", sizemb_VAL, 0, 0,
1546 "#vgcreate\n"
1547 "Sets the physical extent size of PVs in the VG.\n"
1548 "The value must be either a power of 2 of at least 1 sector\n"
1549 "(where the sector size is the largest sector size of the PVs\n"
fe6fb1ec 1550 "currently used in the VG), or at least 128 KiB.\n"
5c779b32
DT
1551 "Once this value has been set, it is difficult to change\n"
1552 "without recreating the VG, unless no extents need moving.\n"
1553 "#vgchange\n"
1554 "Sets the physical extent size of PVs in the VG.\n"
1555 "The value must be either a power of 2 of at least 1 sector\n"
1556 "(where the sector size is the largest sector size of the PVs\n"
fe6fb1ec 1557 "currently used in the VG), or at least 128 KiB.\n"
5c779b32
DT
1558 "Once this value has been set, it is difficult to change\n"
1559 "without recreating the VG, unless no extents need moving.\n"
1560 "Before increasing the physical extent size, you might need to use lvresize,\n"
1561 "pvresize and/or pvmove so that everything fits. For example, every\n"
1562 "contiguous range of extents used in a LV must start and end on an extent boundary.\n")
1563
1564arg(snapshot_ARG, 's', "snapshot", 0, 0, 0,
1565 "#lvcreate\n"
1566 "Create a snapshot. Snapshots provide a \"frozen image\" of an origin LV.\n"
1567 "The snapshot LV can be used, e.g. for backups, while the origin LV\n"
1568 "continues to be used.\n"
1569 "This option can create a COW (copy on write) snapshot,\n"
1570 "or a thin snapshot (in a thin pool.)\n"
1571 "Thin snapshots are created when the origin is a thin LV and\n"
1572 "the size option is NOT specified. Thin snapshots share the same blocks\n"
1573 "in the thin pool, and do not allocate new space from the VG.\n"
1574 "Thin snapshots are created with the \"activation skip\" flag,\n"
36cac411 1575 "see --setactivationskip.\n"
5c779b32
DT
1576 "A thin snapshot of a non-thin \"external origin\" LV is created\n"
1577 "when a thin pool is specified. Unprovisioned blocks in the thin snapshot\n"
1578 "LV are read from the external origin LV. The external origin LV must\n"
1579 "be read-only.\n"
3d5182c8 1580 "See \\fBlvmthin\\fP(7) for more information about LVM thin provisioning.\n"
5c779b32
DT
1581 "COW snapshots are created when a size is specified. The size is allocated\n"
1582 "from space in the VG, and is the amount of space that can be used\n"
1583 "for saving COW blocks as writes occur to the origin or snapshot.\n"
1584 "The size chosen should depend upon the amount of writes that are expected;\n"
1585 "often 20% of the origin LV is enough. If COW space runs low, it can\n"
1586 "be extended with lvextend (shrinking is also allowed with lvreduce.)\n"
1587 "A small amount of the COW snapshot LV size is used to track COW block\n"
1588 "locations, so the full size is not available for COW data blocks.\n"
36cac411 1589 "Use lvs to check how much space is used, and see --monitor to\n"
5c779b32
DT
1590 "to automatically extend the size to avoid running out of space.\n"
1591 "#lvconvert\n"
1592 "Combine a former COW snapshot LV with a former origin LV to reverse\n"
36cac411 1593 "a previous --splitsnapshot command.\n")
5c779b32
DT
1594
1595arg(short_ARG, 's', "short", 0, 0, 0,
1596 "#pvdisplay\n"
1597 "Only display the size of the given PVs.\n"
1598 "#vgdisplay\n"
1599 "Give a short listing showing the existence of VGs.\n"
1600 "#pvscan\n"
1601 "Short listing format.\n")
1602
1603/* Not used */
1604arg(stdin_ARG, 's', "stdin", 0, 0, 0, NULL)
1605
1606arg(select_ARG, 'S', "select", string_VAL, ARG_GROUPABLE, 0,
1607 "Select objects for processing and reporting based on specified criteria.\n"
36cac411 1608 "The criteria syntax is described by \\fB--select help\\fP and \\fBlvmreport\\fP(7).\n"
191a2517 1609 "For reporting commands, one row is displayed for each object matching the criteria.\n"
36cac411 1610 "See \\fB--options help\\fP for selectable object fields.\n"
191a2517 1611 "Rows can be displayed with an additional \"selected\" field (-o selected)\n"
5c779b32
DT
1612 "showing 1 if the row matches the selection and 0 otherwise.\n"
1613 "For non-reporting commands which process LVM entities, the selection is\n"
1614 "used to choose items to process.\n")
1615
1616arg(test_ARG, 't', "test", 0, 0, 0,
1617 "Run in test mode. Commands will not update metadata.\n"
1618 "This is implemented by disabling all metadata writing but nevertheless\n"
1619 "returning success to the calling function. This may lead to unusual\n"
1620 "error messages in multi-stage operations if a tool relies on reading\n"
1621 "back metadata it believes has changed but hasn't.\n")
1622
1623arg(thin_ARG, 'T', "thin", 0, 0, 0,
1624 "Specifies the command is handling a thin LV or thin pool.\n"
36cac411 1625 "See --type thin, --type thin-pool, and --virtualsize.\n"
3d5182c8 1626 "See \\fBlvmthin\\fP(7) for more information about LVM thin provisioning.\n")
5c779b32 1627
47effdc0 1628arg(updatemetadata_ARG, '\0', "updatemetadata", 0, 0, 0,
fa9eb76a
DT
1629 "Update VG metadata to correct problems.\n"
1630 "If VG metadata was updated while a PV was missing, and the PV\n"
1631 "reappears with an old version of metadata, then this option\n"
1632 "(or any other command that writes metadata) will update the\n"
1633 "metadata on the previously missing PV. If a PV was removed\n"
1634 "from a VG while it was missing, and the PV reappears, using\n"
1635 "this option will clear the outdated metadata from the previously\n"
1636 "missing PV. If metadata text is damaged on one PV, using this\n"
1637 "option will replace the damaged metadata text. For more severe\n"
1638 "damage, e.g. with headers, see \\fBpvck\\fP(8).\n")
47effdc0 1639
5c779b32
DT
1640arg(uuid_ARG, 'u', "uuid", 0, 0, 0,
1641 "#pvchange\n"
1642 "Generate new random UUID for specified PVs.\n"
1643 "#pvscan\n"
1644 "Show UUIDs in addition to device names.\n"
1645 "#vgchange\n"
1646 "Generate new random UUID for specified VGs.\n")
1647
1648arg(uuidstr_ARG, 'u', "uuid", string_VAL, 0, 0,
1649 "Specify a UUID for the device.\n"
1650 "Without this option, a random UUID is generated.\n"
1651 "This option is needed before restoring a backup of LVM metadata\n"
a7a28bd9 1652 "onto a replacement device; see \\fBvgcfgrestore\\fP(8). As such, use of\n"
36cac411 1653 "--restorefile is compulsory unless the --norestorefile is used.\n"
5c779b32
DT
1654 "All PVs must have unique UUIDs, and LVM will prevent certain operations\n"
1655 "if multiple devices are seen with the same UUID.\n"
a7a28bd9 1656 "See \\fBvgimportclone\\fP(8) for more information.\n")
5c779b32
DT
1657
1658/* Not used */
1659arg(uuidlist_ARG, 'U', "uuidlist", 0, 0, 0, NULL)
1660
1661arg(verbose_ARG, 'v', "verbose", 0, ARG_COUNTABLE, 0,
1662 "Set verbose level. Repeat from 1 to 4 times to increase the detail\n"
1663 "of messages sent to stdout and stderr.\n")
1664
1665/* Not used */
1666arg(volumegroup_ARG, 'V', "volumegroup", 0, 0, 0, NULL)
1667
1668arg(virtualsize_ARG, 'V', "virtualsize", sizemb_VAL, 0, 0,
1669 "The virtual size of a new thin LV.\n"
3d5182c8 1670 "See \\fBlvmthin\\fP(7) for more information about LVM thin provisioning.\n"
36cac411 1671 "Using virtual size (-V) and actual size (-L) together creates\n"
5c779b32 1672 "a sparse LV.\n"
0f87b015 1673 "\\fBlvm.conf\\fP(5) \\fBglobal/sparse_segtype_default\\fP determines the\n"
5c779b32
DT
1674 "default segment type used to create a sparse LV.\n"
1675 "Anything written to a sparse LV will be returned when reading from it.\n"
1676 "Reading from other areas of the LV will return blocks of zeros.\n"
1677 "When using a snapshot to create a sparse LV, a hidden virtual device\n"
1678 "is created using the zero target, and the LV has the suffix _vorigin.\n"
1679 "Snapshots are less efficient than thin provisioning when creating\n"
1680 "large sparse LVs (GiB).\n")
1681
1682arg(wipesignatures_ARG, 'W', "wipesignatures", bool_VAL, 0, 0,
1683 "Controls detection and subsequent wiping of signatures on new LVs.\n"
1684 "There is a prompt for each signature detected to confirm its wiping\n"
36cac411 1685 "(unless --yes is used to override confirmations.)\n"
5c779b32 1686 "When not specified, signatures are wiped whenever zeroing is done\n"
36cac411 1687 "(see --zero). This behaviour can be configured with\n"
0f87b015
ZK
1688 "\\fBlvm.conf\\fP(5) \\fBallocation/wipe_signatures_when_zeroing_new_lvs\\fP.\n"
1689 "If blkid wiping is used (\\fBlvm.conf\\fP(5) \\fBallocation/use_blkid_wiping\\fP)\n"
5c779b32 1690 "and LVM is compiled with blkid wiping support, then the blkid(8)\n"
36cac411 1691 "library is used to detect the signatures (use blkid -k to list the\n"
5c779b32
DT
1692 "signatures that are recognized).\n"
1693 "Otherwise, native LVM code is used to detect signatures\n"
1694 "(only MD RAID, swap and LUKS signatures are detected in this case.)\n"
1695 "The LV is not wiped if the read only flag is set.\n")
1696
1697arg(allocatable_ARG, 'x', "allocatable", bool_VAL, 0, 0,
1698 "Enable or disable allocation of physical extents on this PV.\n")
1699
1700arg(resizeable_ARG, 'x', "resizeable", bool_VAL, 0, 0,
1701 "Enables or disables the addition or removal of PVs to/from a VG\n"
1702 "(by vgextend/vgreduce).\n")
1703
1704arg(yes_ARG, 'y', "yes", 0, 0, 0,
1705 "Do not prompt for confirmation interactively but always assume the\n"
3cf39438 1706 "answer yes. Use with extreme caution.\n"
36cac411 1707 "(For automatic no, see -qq.)\n")
5c779b32
DT
1708
1709arg(zero_ARG, 'Z', "zero", bool_VAL, 0, 0,
1710 "#lvchange\n"
1711 "Set zeroing mode for thin pool. Note: already provisioned blocks from pool\n"
36cac411 1712 "in non-zero mode are not cleared in unwritten parts when setting --zero y.\n"
5c779b32 1713 "#lvconvert\n"
fe6fb1ec 1714 "For snapshots, this controls zeroing of the first 4 KiB of data in the\n"
5c779b32
DT
1715 "snapshot. If the LV is read-only, the snapshot will not be zeroed.\n"
1716 "For thin pools, this controls zeroing of provisioned blocks.\n"
1717 "Provisioning of large zeroed chunks negatively impacts performance.\n"
1718 "#lvcreate\n"
fe6fb1ec 1719 "Controls zeroing of the first 4 KiB of data in the new LV.\n"
5c779b32
DT
1720 "Default is \\fBy\\fP.\n"
1721 "Snapshot COW volumes are always zeroed.\n"
e8ea3c9a 1722 "For thin pools, this controls zeroing of provisioned blocks.\n"
5c779b32
DT
1723 "LV is not zeroed if the read only flag is set.\n"
1724 "Warning: trying to mount an unzeroed LV can cause the system to hang.\n"
1725 "#pvcreate\n"
1726 "#vgcreate\n"
1727 "#vgextend\n"
1728 "Controls if the first 4 sectors (2048 bytes) of the device are wiped.\n"
1729 "The default is to wipe these sectors unless either or both of\n"
36cac411 1730 "--restorefile or --uuid are specified.\n")
269930c0
AK
1731
1732/* this should always be last */
5c779b32 1733arg(ARG_COUNT, '-', "", 0, 0, 0, NULL)
27f364af 1734/* *INDENT-ON* */
This page took 0.448564 seconds and 6 git commands to generate.