]>
Commit | Line | Data |
---|---|---|
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 |
20 | arg(ARG_UNUSED, '-', "", 0, 0, 0, NULL) /* place holder for unused 0 value */ |
21 | ||
22 | arg(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 | ||
31 | arg(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 | |
43 | arg(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 |
47 | arg(adddev_ARG, '\0', "adddev", pv_VAL, 0, 0, |
48 | "Add a device to the devices file.\n") | |
fb7698b0 DT |
49 | |
50 | arg(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 |
55 | arg(delnotfound_ARG, '\0', "delnotfound", 0, 0, 0, |
56 | "Remove devices file entries with no matching device.\n") | |
57 | ||
83fe6e72 DT |
58 | arg(addpvid_ARG, '\0', "addpvid", string_VAL, 0, 0, |
59 | "Find a device with the PVID and add the device to the devices file.\n") | |
60 | arg(delpvid_ARG, '\0', "delpvid", string_VAL, 0, 0, | |
61 | "Remove a device with the PVID from the devices file.\n") | |
62 | ||
5c779b32 | 63 | arg(aligned_ARG, '\0', "aligned", 0, 0, 0, |
36cac411 | 64 | "Use with --separator to align the output columns\n") |
5c779b32 DT |
65 | |
66 | arg(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 | |
84 | arg(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 | ||
88 | arg(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 |
97 | arg(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 |
105 | arg(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 |
111 | arg(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 |
122 | arg(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 | ||
127 | arg(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 | 140 | arg(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 |
148 | arg(cachemetadataformat_ARG, '\0', "cachemetadataformat", cachemetadataformat_VAL, 0, 0, |
149 | "Specifies the cache metadata format used by cache target.\n") | |
150 | ||
5c779b32 DT |
151 | arg(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 | |
164 | arg(cachepool_ARG, '\0', "cachepool", lv_VAL, 0, 0, | |
a9eaab6b DT |
165 | "The name of a cache pool.\n") |
166 | ||
167 | arg(cachevol_ARG, '\0', "cachevol", lv_VAL, 0, 0, | |
168 | "The name of a cache volume.\n") | |
5c779b32 | 169 | |
2aed2a41 | 170 | arg(cachedevice_ARG, '\0', "cachedevice", pv_VAL, ARG_GROUPABLE, 0, |
21b37964 DT |
171 | "The name of a device to use for a cache.\n") |
172 | ||
173 | arg(cachesize_ARG, '\0', "cachesize", sizemb_VAL, 0, 0, | |
174 | "The size of cache to use.\n") | |
175 | ||
83fe6e72 | 176 | arg(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 |
180 | arg(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 |
184 | arg(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 | 188 | arg(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 | |
194 | arg(configreport_ARG, '\0', "configreport", configreport_VAL, ARG_GROUPABLE, 1, | |
a7a28bd9 | 195 | "See \\fBlvmreport\\fP(7).\n") |
5c779b32 DT |
196 | |
197 | arg(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 | 231 | arg(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 | |
238 | arg(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 |
241 | arg(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 |
245 | arg(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 | |
249 | arg(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 |
253 | arg(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 | 258 | arg(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 | ||
264 | arg(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 |
271 | arg(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 | |
281 | arg(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 | 285 | arg(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 |
294 | arg(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 | 304 | arg(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 | ||
311 | arg(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 |
315 | arg(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 | ||
330 | arg(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 |
341 | arg(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 |
345 | arg(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 |
351 | arg(ignoreadvanced_ARG, '\0', "ignoreadvanced", 0, 0, 0, |
352 | "Exclude advanced configuration settings from the output.\n") | |
353 | ||
354 | arg(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 | |
360 | arg(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 | ||
364 | arg(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 | ||
368 | arg(ignoreskippedcluster_ARG, '\0', "ignoreskippedcluster", 0, 0, 0, | |
428514a0 | 369 | "No longer used.\n") |
5c779b32 DT |
370 | |
371 | arg(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 |
378 | arg(importdevices_ARG, '\0', "importdevices", 0, 0, 0, |
379 | "Add devices to the devices file.\n") | |
380 | ||
bbf8e7db DT |
381 | arg(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 |
389 | arg(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 |
395 | arg(listlvs_ARG, '\0', "listlvs", 0, 0, 0, |
396 | "Print a list of LVs that use the device.\n") | |
397 | ||
398 | arg(listvg_ARG, '\0', "listvg", 0, 0, 0, | |
399 | "Print the VG that uses the device.\n") | |
400 | ||
401 | arg(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 |
408 | arg(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 | |
412 | arg(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 | |
417 | arg(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 | |
422 | arg(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 | |
430 | arg(logonly_ARG, '\0', "logonly", 0, 0, 0, | |
431 | "Suppress command report and display only log report.\n") | |
432 | ||
f46b28bd DT |
433 | arg(longhelp_ARG, '\0', "longhelp", 0, 0, 0, |
434 | "Display long help text.\n") | |
435 | ||
aa85ed17 DT |
436 | arg(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 |
440 | arg(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 | |
446 | arg(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 | ||
450 | arg(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 | |
454 | arg(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 | ||
468 | arg(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 | |
474 | arg(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 |
483 | arg(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 | ||
489 | arg(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 | |
493 | arg(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 | ||
497 | arg(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 | ||
504 | arg(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 | |
510 | arg(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 | |
521 | arg(mirrorsonly_ARG, '\0', "mirrorsonly", 0, 0, 0, | |
522 | "Only remove missing PVs from mirror LVs.\n") | |
523 | ||
524 | arg(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 | |
529 | arg(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 | |
535 | arg(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 | ||
540 | arg(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 |
544 | arg(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 |
549 | arg(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 | ||
554 | arg(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 | |
558 | arg(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 | ||
562 | arg(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 | ||
566 | arg(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 | ||
580 | arg(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 | ||
585 | arg(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 | ||
591 | arg(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 | 596 | arg(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 |
600 | arg(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 |
605 | arg(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 | |
614 | arg(polloperation_ARG, '\0', "polloperation", polloperation_VAL, 0, 0, | |
615 | "The command to perform from lvmpolld.\n") | |
616 | ||
617 | /* Not used. */ | |
618 | arg(pooldatasize_ARG, '\0', "pooldatasize", sizemb_VAL, 0, 0, NULL) | |
619 | ||
4ccedcea ZK |
620 | arg(pooldatavdo_ARG, '\0', "pooldatavdo", bool_VAL, 0, 0, |
621 | "Use VDO type volume for pool data volume.\n") | |
622 | ||
5c779b32 DT |
623 | arg(poolmetadata_ARG, '\0', "poolmetadata", lv_VAL, 0, 0, |
624 | "The name of a an LV to use for storing pool metadata.\n") | |
625 | ||
a6a2788e | 626 | arg(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 | |
636 | arg(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 | ||
641 | arg(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 | ||
645 | arg(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 |
654 | arg(raidintegrity_ARG, '\0', "raidintegrity", bool_VAL, 0, 0, |
655 | "Enable or disable data integrity checksums for raid images.\n") | |
656 | ||
657 | arg(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 | ||
665 | arg(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 | 674 | arg(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 | |
678 | arg(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 | |
701 | arg(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 | ||
713 | arg(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 | |
721 | arg(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 | ||
729 | arg(repairtype_ARG, '\0', "repairtype", repairtype_VAL, 0, 0, | |
730 | "Repair headers and metadata on a PV. See command description.\n") | |
5c779b32 DT |
731 | |
732 | arg(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 | 738 | arg(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 | |
748 | arg(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 | ||
757 | arg(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 | ||
761 | arg(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 |
770 | arg(rootvg_ARG, '\0', "rootvg", 0, 0, 0, |
771 | "Import devices used for the root VG.\n") | |
772 | ||
5c779b32 DT |
773 | arg(rows_ARG, '\0', "rows", 0, 0, 0, |
774 | "Output columns as rows.\n") | |
775 | ||
776 | arg(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 | ||
784 | arg(separator_ARG, '\0', "separator", string_VAL, 0, 0, | |
785 | "String to use to separate each column. Useful if grepping the output.\n") | |
786 | ||
787 | arg(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 | |
805 | arg(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 |
811 | arg(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 | |
815 | arg(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 | |
822 | arg(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 | ||
827 | arg(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 | ||
835 | arg(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 | ||
842 | arg(startpoll_ARG, '\0', "startpoll", 0, 0, 0, | |
843 | "Start polling an LV to continue processing a conversion.\n") | |
844 | ||
93918a19 | 845 | arg(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 | ||
852 | arg(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 | |
860 | arg(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 | |
869 | arg(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 | ||
878 | arg(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 | |
893 | arg(thinpool_ARG, '\0', "thinpool", lv_VAL, 0, 0, | |
894 | "The name of a thin pool LV.\n") | |
895 | ||
896 | arg(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 | 906 | arg(trustcache_ARG, '\0', "trustcache", 0, 0, 0, |
0f350ba8 | 907 | "No longer used.\n") |
5c779b32 DT |
908 | |
909 | arg(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 |
922 | arg(udevoutput_ARG, '\0', "udevoutput", 0, 0, 0, |
923 | "Command output is modified to be imported from a udev rule.\n") | |
924 | ||
5c779b32 DT |
925 | arg(unbuffered_ARG, '\0', "unbuffered", 0, 0, 0, |
926 | "Produce output immediately without sorting or aligning the columns properly.\n") | |
927 | ||
928 | arg(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 |
932 | arg(update_ARG, '\0', "update", 0, 0, 0, |
933 | "Update the content of the devices file.\n") | |
934 | ||
5c779b32 DT |
935 | arg(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 | |
939 | arg(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 | |
949 | arg(unconfigured_ARG, '\0', "unconfigured", 0, 0, 0, | |
950 | "Internal option used for generating config file during build.\n") | |
951 | ||
952 | arg(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 | |
960 | arg(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 | ||
964 | arg(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 | ||
968 | arg(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 | |
975 | arg(valuesonly_ARG, '\0', "valuesonly", 0, 0, 0, | |
976 | "When printing config settings, print only values without keys.\n") | |
5c779b32 | 977 | |
96e9929f ZK |
978 | arg(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 | ||
983 | arg(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 |
987 | arg(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 |
996 | arg(version_ARG, '\0', "version", 0, 0, 0, |
997 | "Display version information.\n") | |
998 | ||
999 | arg(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 |
1014 | arg(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 |
1018 | arg(withsummary_ARG, '\0', "withsummary", 0, 0, 0, |
1019 | "Display a one line comment for each configuration node.\n") | |
1020 | ||
1021 | arg(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 |
1025 | arg(withgeneralpreamble_ARG, '\0', "withgeneralpreamble", 0, 0, 0, |
1026 | "Include general config file preamble.\n") | |
1027 | ||
1028 | arg(withlocalpreamble_ARG, '\0', "withlocalpreamble", 0, 0, 0, | |
1029 | "Include local config file preamble.\n") | |
1030 | ||
5c779b32 DT |
1031 | arg(withspaces_ARG, '\0', "withspaces", 0, 0, 0, |
1032 | "Where appropriate, add more spaces in output for better readability.\n") | |
1033 | ||
1034 | arg(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 | ||
1039 | arg(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 | ||
1047 | arg(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 | */ |
1071 | arg(corelog_ARG, '\0', "corelog", 0, 0, 0, NULL) | |
1072 | arg(resizable_ARG, '\0', "resizable", bool_VAL, 0, 0, NULL) | |
5c779b32 DT |
1073 | arg(allocation_ARG, '\0', "allocation", bool_VAL, 0, 0, NULL) |
1074 | arg(available_ARG, '\0', "available", activation_VAL, 0, 0, NULL) | |
f067c0ad DT |
1075 | arg(raidrebuild_ARG, '\0', "raidrebuild", pv_VAL, ARG_GROUPABLE, 0, NULL) |
1076 | arg(raidsyncaction_ARG, '\0', "raidsyncaction", syncaction_VAL, 0, 0, NULL) | |
1077 | arg(raidwritemostly_ARG, '\0', "raidwritemostly", writemostly_VAL, ARG_GROUPABLE, 0, NULL) | |
1078 | arg(raidminrecoveryrate_ARG, '\0', "raidminrecoveryrate", sizekb_VAL, 0, 0, NULL) | |
1079 | arg(raidmaxrecoveryrate_ARG, '\0', "raidmaxrecoveryrate", sizekb_VAL, 0, 0, NULL) | |
1080 | arg(raidwritebehind_ARG, '\0', "raidwritebehind", number_VAL, 0, 0, NULL) | |
1081 | arg(virtualoriginsize_ARG, '\0', "virtualoriginsize", sizemb_VAL, 0, 0, NULL) | |
1082 | arg(split_ARG, '\0', "split", 0, 0, 0, NULL) | |
1083 | arg(metadatacopies_ARG, '\0', "metadatacopies", metadatacopies_VAL, 0, 0, NULL) | |
1084 | ||
b80f32dd | 1085 | |
8a6d1dd4 JT |
1086 | /* |
1087 | * ... and now the short args. | |
1088 | */ | |
5c779b32 | 1089 | arg(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 | |
1133 | arg(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 | ||
1153 | arg(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 | |
1157 | arg(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 |
1161 | arg(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 |
1169 | arg(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 |
1174 | arg(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 | ||
1181 | arg(blockdevice_ARG, 'b', "blockdevice", 0, 0, 0, | |
1182 | "No longer used.\n") | |
1183 | ||
1184 | arg(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 | |
1196 | arg(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 | |
1200 | arg(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 | |
1204 | arg(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 | |
1208 | arg(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 | ||
1215 | arg(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 | ||
1219 | arg(exported_ARG, 'e', "exported", 0, 0, 0, | |
1220 | "Only show PVs belonging to exported VGs.\n") | |
1221 | ||
1222 | /* Not used. */ | |
1223 | arg(physicalextent_ARG, 'E', "physicalextent", 0, 0, 0, NULL) | |
1224 | ||
1225 | arg(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 | ||
1240 | arg(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. */ | |
1245 | arg(full_ARG, 'f', "full", 0, 0, 0, NULL) | |
1246 | ||
f46b28bd DT |
1247 | arg(help_ARG, 'h', "help", 0, 0, 0, |
1248 | "Display help text.\n") | |
5c779b32 DT |
1249 | |
1250 | arg(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 | |
1255 | arg(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 */ | |
1261 | arg(help2_ARG, '?', "", 0, 0, 0, NULL) | |
1262 | ||
1263 | arg(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 | ||
1267 | arg(interval_ARG, 'i', "interval", number_VAL, 0, 0, | |
1268 | "Report progress at regular intervals.\n") | |
1269 | ||
1270 | /* Not used */ | |
1271 | arg(iop_version_ARG, 'i', "iop_version", 0, 0, 0, NULL) | |
1272 | ||
1273 | arg(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 | |
1287 | arg(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 | 1291 | arg(logicalvolume_ARG, 'l', "logicalvolume", uint32_VAL, 0, 0, |
5c779b32 DT |
1292 | "Sets the maximum number of LVs allowed in a VG.\n") |
1293 | ||
8152e4a9 | 1294 | arg(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 | 1302 | arg(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 | |
1341 | arg(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 | |
1353 | arg(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 | 1361 | arg(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 | |
1378 | arg(persistent_ARG, 'M', "persistent", bool_VAL, 0, 0, | |
1379 | "When yes, makes the specified minor number persistent.\n") | |
1380 | ||
1381 | arg(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 | ||
1388 | arg(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 | ||
1396 | arg(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 |
1400 | arg(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 |
1404 | arg(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 | 1414 | arg(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 | ||
1449 | arg(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 | |
1454 | arg(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 | ||
1465 | arg(nofsck_ARG, 'n', "nofsck", 0, 0, 0, | |
264827cb | 1466 | "Do not perform fsck when resizing the file system with --resizefs.\n") |
5c779b32 DT |
1467 | |
1468 | arg(novolumegroup_ARG, 'n', "novolumegroup", 0, 0, 0, | |
1469 | "Only show PVs not belonging to any VG.\n") | |
1470 | ||
1471 | /* Not used */ | |
1472 | arg(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 | ||
1480 | arg(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 | |
1499 | arg(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 | ||
1503 | arg(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 | |
1509 | arg(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 | 1512 | arg(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 */ | |
1519 | arg(physicalvolume_ARG, 'P', "physicalvolume", 0, 0, 0, NULL) | |
1520 | ||
1521 | arg(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 | |
1525 | arg(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 | ||
1531 | arg(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 */ | |
1538 | arg(reset_ARG, 'R', "reset", 0, 0, 0, NULL) | |
1539 | ||
73235573 | 1540 | arg(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 | |
1545 | arg(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 | ||
1564 | arg(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 | |
1595 | arg(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 */ | |
1604 | arg(stdin_ARG, 's', "stdin", 0, 0, 0, NULL) | |
1605 | ||
1606 | arg(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 | ||
1616 | arg(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 | ||
1623 | arg(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 | 1628 | arg(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 |
1640 | arg(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 | ||
1648 | arg(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 */ | |
1659 | arg(uuidlist_ARG, 'U', "uuidlist", 0, 0, 0, NULL) | |
1660 | ||
1661 | arg(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 */ | |
1666 | arg(volumegroup_ARG, 'V', "volumegroup", 0, 0, 0, NULL) | |
1667 | ||
1668 | arg(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 | ||
1682 | arg(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 | ||
1697 | arg(allocatable_ARG, 'x', "allocatable", bool_VAL, 0, 0, | |
1698 | "Enable or disable allocation of physical extents on this PV.\n") | |
1699 | ||
1700 | arg(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 | ||
1704 | arg(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 | |
1709 | arg(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 | 1733 | arg(ARG_COUNT, '-', "", 0, 0, 0, NULL) |
27f364af | 1734 | /* *INDENT-ON* */ |