/*
 * Copyright (C) 2001-2004 Sistina Software, Inc. All rights reserved.
 * Copyright (C) 2004-2014 Red Hat, Inc. All rights reserved.
 *
 * This file is part of LVM2.
 *
 * This copyrighted material is made available to anyone wishing to use,
 * modify, copy, or redistribute it subject to the terms and conditions
 * of the GNU Lesser General Public License v.2.1.
 *
 * You should have received a copy of the GNU Lesser General Public License
 * along with this program; if not, write to the Free Software Foundation,
 * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 */

/***********  Replace with script?
xx(e2fsadm,
   "Resize logical volume and ext2 filesystem",
   "e2fsadm "
   "[-d|--debug] " "[-h|--help] " "[-n|--nofsck]\n"
   "\t{[-l|--extents] [+|-]LogicalExtentsNumber |\n"
   "\t [-L|--size] [+|-]LogicalVolumeSize[bBsSkKmMgGtTpPeE]}\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tLogicalVolumePath\n",

    extents_ARG, size_ARG, nofsck_ARG, test_ARG)
*********/

xx(config,
   "Display and manipulate configuration information",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "config\n"
   "\t[-f|--file filename]\n"
   "\t[--type {current|default|diff|full|list|missing|new|profilable|profilable-command|profilable-metadata}]\n"
   "\t[--atversion version]\n"
   "\t[--ignoreadvanced]\n"
   "\t[--ignoreunsupported]\n"
   "\t[--ignorelocal]\n"
   "\t[-l|--list]\n"
   "\t[--config ConfigurationString]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--profile ProfileName]\n"
   "\t[--metadataprofile ProfileName]\n"
   "\t[--mergedconfig]\n"
   "\t[--sinceversion version]\n"
   "\t[--showdeprecated]\n"
   "\t[--showunsupported]\n"
   "\t[--validate]\n"
   "\t[--withsummary]\n"
   "\t[--withcomments]\n"
   "\t[--withspaces]\n"
   "\t[--unconfigured]\n"
   "\t[--withversions]\n"
   "\t[ConfigurationNode...]\n",
   atversion_ARG, configtype_ARG, file_ARG, ignoreadvanced_ARG,
   ignoreunsupported_ARG, ignorelocal_ARG, list_ARG, mergedconfig_ARG, metadataprofile_ARG,
   sinceversion_ARG, showdeprecated_ARG, showunsupported_ARG, validate_ARG, withsummary_ARG,
   withcomments_ARG, withspaces_ARG, unconfigured_ARG, withversions_ARG)

xx(devtypes,
   "Display recognised built-in block device types",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "devtypes\n"
   "\t[--aligned]\n"
   "\t[--binary]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[--nameprefixes]\n"
   "\t[--noheadings]\n"
   "\t[--nosuffix]\n"
   "\t[-o|--options [+|-|#]Field[,Field]]\n"
   "\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[--rows]\n"
   "\t[-S|--select Selection]\n"
   "\t[--separator Separator]\n"
   "\t[--unbuffered]\n"
   "\t[--unquoted]\n"
   "\t[--version]\n",

   aligned_ARG, binary_ARG, nameprefixes_ARG, noheadings_ARG,
   nosuffix_ARG, options_ARG, reportformat_ARG, rows_ARG,
   select_ARG, separator_ARG, sort_ARG, unbuffered_ARG, unquoted_ARG)

xx(dumpconfig,
   "Display and manipulate configuration information",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "dumpconfig\n"
   "\t[-f|--file filename]\n"
   "\t[--type {current|default|diff|full|list|missing|new|profilable|profilable-command|profilable-metadata}]\n"
   "\t[--atversion version]\n"
   "\t[--ignoreadvanced]\n"
   "\t[--ignoreunsupported]\n"
   "\t[--ignorelocal]\n"
   "\t[-l|--list]\n"
   "\t[--config ConfigurationString]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--profile ProfileName]\n"
   "\t[--metadataprofile ProfileName]\n"
   "\t[--mergedconfig]\n"
   "\t[--sinceversion version]\n"
   "\t[--showdeprecated]\n"
   "\t[--showunsupported]\n"
   "\t[--validate]\n"
   "\t[--withsummary]\n"
   "\t[--withcomments]\n"
   "\t[--withspaces]\n"
   "\t[--unconfigured]\n"
   "\t[--withversions]\n"
   "\t[ConfigurationNode...]\n",
   atversion_ARG, configtype_ARG, file_ARG, ignoreadvanced_ARG,
   ignoreunsupported_ARG, ignorelocal_ARG, list_ARG, mergedconfig_ARG, metadataprofile_ARG,
   sinceversion_ARG, showdeprecated_ARG, showunsupported_ARG, validate_ARG, withsummary_ARG,
   withcomments_ARG, withspaces_ARG, unconfigured_ARG, withversions_ARG)

xx(formats,
   "List available metadata formats",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "formats\n")

xx(help,
   "Display help for commands",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "help <command>\n")

/*********
xx(lvactivate,
   "Activate logical volume on given partition(s)",
   "lvactivate "
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[-v|--verbose]\n"
   "Logical Volume(s)\n")
***********/

xx(fullreport,
   "Display full report",
   PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT | LOCKD_VG_SH,
   "fullreport\n"
   "\t[--aligned]\n"
   "\t[--binary]\n"
   "\t[-a|--all]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--configreport ReportName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[--logonly]\n"
   "\t[--nameprefixes]\n"
   "\t[--noheadings]\n"
   "\t[--nosuffix]\n"
   "\t[-o|--options [+|-|#]Field[,Field]]\n"
   "\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[--rows]\n"
   "\t[-S|--select Selection]\n"
   "\t[--separator Separator]\n"
   "\t[--trustcache]\n"
   "\t[--unbuffered]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[--unquoted]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[VolumeGroupName [VolumeGroupName...]]\n",

   aligned_ARG, all_ARG, binary_ARG, configreport_ARG, foreign_ARG,
   ignorelockingfailure_ARG, ignoreskippedcluster_ARG, logonly_ARG,
   nameprefixes_ARG, noheadings_ARG, nolocking_ARG, nosuffix_ARG,
   options_ARG, partial_ARG, readonly_ARG, reportformat_ARG, rows_ARG,
   select_ARG, separator_ARG, shared_ARG, sort_ARG, trustcache_ARG,
   unbuffered_ARG, units_ARG, unquoted_ARG)

xx(lastlog,
   "Display last command's log report",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "log\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n",

   reportformat_ARG, select_ARG)

xx(lvchange,
   "Change the attributes of logical volume(s)",
   CACHE_VGMETADATA | PERMITTED_READ_ONLY,
   "lvchange\n"
   "\t[-A|--autobackup {y|n}]\n"
   "\t[-a|--activate [a][e|s|l]{y|n}]\n"
   "\t[--activationmode {complete|degraded|partial}"
   "\t[--addtag <Tag>]\n"
   "\t[--alloc <AllocationPolicy>]\n"
   "\t[-C|--contiguous {y|n}]\n"
   "\t[--cachemode <CacheMode>]\n"
   "\t[--cachepolicy <policyname>] [--cachesettings <parameter=value>]\n"
   "\t[--commandprofile <ProfileName>]\n"
   "\t[-d|--debug]\n"
   "\t[--deltag <Tag>]\n"
   "\t[--detachprofile]\n"
   "\t[--errorwhenfull {y|n}]\n"
   "\t[-f|--force]\n"
   "\t[-h|--help]\n"
   "\t[--discards {ignore|nopassdown|passdown}]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoremonitoring]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[-k|--setactivationskip {y|n}]\n"
   "\t[-K|--ignoreactivationskip]\n"
   "\t[--monitor {y|n}]\n"
   "\t[--poll {y|n}]\n"
   "\t[--noudevsync]\n"
   "\t[-M|--persistent {y|n}] [-j|--major <major>] [--minor <minor>]\n"
   "\t[--metadataprofile <ProfileName>]\n"
   "\t[-P|--partial]\n"
   "\t[-p|--permission {r|rw}]\n"
   "\t[--[raid]minrecoveryrate <Rate>]\n"
   "\t[--[raid]maxrecoveryrate <Rate>]\n"
   "\t[--[raid]syncaction {check|repair}\n"
   "\t[--[raid]writebehind <IOCount>]\n"
   "\t[--[raid]writemostly <PhysicalVolume>[:{t|n|y}]]\n"
   "\t[-r|--readahead <ReadAheadSectors>|auto|none]\n"
   "\t[--refresh]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[--resync]\n"
   "\t[-S|--select Selection]\n"
   "\t[--sysinit]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[-y|--yes]\n"
   "\t[-Z|--zero {y|n}]\n"
   "\t<LogicalVolume[Path]> [<LogicalVolume[Path]>...]\n",

   activationmode_ARG, addtag_ARG, alloc_ARG, autobackup_ARG, activate_ARG,
   available_ARG, cachemode_ARG, cachepolicy_ARG, cachesettings_ARG,
   contiguous_ARG, deltag_ARG,
   discards_ARG, detachprofile_ARG, errorwhenfull_ARG, force_ARG,
   ignorelockingfailure_ARG, ignoremonitoring_ARG, ignoreactivationskip_ARG,
   ignoreskippedcluster_ARG, major_ARG, metadataprofile_ARG, minor_ARG,
   monitor_ARG, minrecoveryrate_ARG, maxrecoveryrate_ARG, noudevsync_ARG,
   partial_ARG, permission_ARG, persistent_ARG, poll_ARG,
   raidminrecoveryrate_ARG, raidmaxrecoveryrate_ARG, raidsyncaction_ARG,
   raidwritebehind_ARG, raidwritemostly_ARG, readahead_ARG, reportformat_ARG,
   resync_ARG, refresh_ARG, select_ARG, setactivationskip_ARG, syncaction_ARG,
   sysinit_ARG, test_ARG, writebehind_ARG, writemostly_ARG, zero_ARG)

#define COMMON_OPTS \
	"\t[--commandprofile <ProfileName>] [-d|--debug] [-h|-?|--help]\n" \
	"\t[--noudevsync] [-t|--test] [-v|--verbose] [--version] [-y|--yes]\n"

xx(lvconvert,
   "Change logical volume layout",
   0,
   "lvconvert "
   "[-m|--mirrors <Mirrors> [--mirrorlog {disk|core|mirrored}|--corelog]]\n"
   "\t[--type <SegmentType>]\n"
   "\t[--repair [--use-policies]]\n"
   "\t[--replace PhysicalVolume]\n"
   "\t[-R|--regionsize <MirrorLogRegionSize>]\n"
   "\t[--alloc <AllocationPolicy>]\n"
   "\t[-b|--background]\n"
   "\t[-f|--force]\n"
   "\t[-i|--interval <Seconds>]\n"
   "\t[--stripes <Stripes> [-I|--stripesize <StripeSize>]]\n"
   COMMON_OPTS
   "\tLogicalVolume[Path] [PhysicalVolume[Path]...]\n\n"

   "lvconvert "
   "[--splitmirrors <Images> --trackchanges]\n"
   "\t[--splitmirrors Images --name SplitLogicalVolumeName]\n"
   COMMON_OPTS
   "\tLogicalVolume[Path] [SplittablePhysicalVolume[Path]...]\n\n"

   "lvconvert "
   "--splitsnapshot\n"
   COMMON_OPTS
   "\tSnapshotLogicalVolume[Path]\n\n"

   "lvconvert "
   "--splitcache\n"
   COMMON_OPTS
   "\tCacheLogicalVolume[Path]\n\n"

   "lvconvert "
   "--split\n"
   "\t[--name SplitLogicalVolumeName]\n"
   COMMON_OPTS
   "\tSplitableLogicalVolume[Path]\n\n"

   "lvconvert "
   "--uncache\n"
   COMMON_OPTS
   "\tCacheLogicalVolume[Path]\n\n"

   "lvconvert "
   "[--type snapshot|-s|--snapshot]\n"
   "\t[-c|--chunksize <ChunkSize>]\n"
   "\t[-Z|--zero {y|n}]\n"
   COMMON_OPTS
   "\tOriginalLogicalVolume[Path] SnapshotLogicalVolume[Path]\n\n"

   "lvconvert "
   "--merge\n"
   "\t[-b|--background]\n"
   "\t[-i|--interval <Seconds>]\n"
   COMMON_OPTS
   "\tLogicalVolume[Path]\n\n"

   "lvconvert "
   "[--type thin[-pool]|-T|--thin]\n"
   "\t[--thinpool ThinPoolLogicalVolume[Path]]\n"
   "\t[--chunksize <ChunkSize>]\n"
   "\t[--discards {ignore|nopassdown|passdown}]\n"
   "\t[--poolmetadataspare {y|n}]\n"
   "\t[--poolmetadata ThinMetadataLogicalVolume[Path] |\n"
   "\t --poolmetadatasize <MetadataSize>]\n"
   "\t[-r|--readahead <ReadAheadSectors>|auto|none]\n"
   "\t[--stripes <Stripes> [-I|--stripesize <StripeSize>]]]\n"
   "\t[--originname NewExternalOriginVolumeName]]\n"
   "\t[-Z|--zero {y|n}]\n"
   COMMON_OPTS
   "\t[ExternalOrigin|ThinDataPool]LogicalVolume[Path] [PhysicalVolumePath...]\n\n"

   "lvconvert "
   "[--type cache[-pool]|-H|--cache]\n"
   "\t[--cachepool CacheDataLogicalVolume[Path]]\n"
   "\t[--cachemode <CacheMode>]\n"
   "\t[--cachepolicy <CachePolicy>]\n"
   "\t[--cachesettings <Key>=<Value>]\n"
   "\t[--chunksize <ChunkSize>]\n"
   "\t[--poolmetadata CacheMetadataLogicalVolume[Path] |\n"
   "\t --poolmetadatasize <MetadataSize>]\n"
   "\t[--poolmetadataspare {y|n}]]\n"
   COMMON_OPTS
   "\t[Cache|CacheDataPool]LogicalVolume[Path] [PhysicalVolumePath...]\n\n",

   alloc_ARG, background_ARG, cache_ARG, cachemode_ARG,
   cachepool_ARG, cachepolicy_ARG, cachesettings_ARG, chunksize_ARG,
   corelog_ARG, discards_ARG, force_ARG, interval_ARG, merge_ARG, mirrorlog_ARG,
   mirrors_ARG, name_ARG, noudevsync_ARG, originname_ARG, poolmetadata_ARG,
   poolmetadatasize_ARG, poolmetadataspare_ARG, readahead_ARG, regionsize_ARG,
   repair_ARG, replace_ARG, snapshot_ARG,
   split_ARG, splitcache_ARG, splitmirrors_ARG, splitsnapshot_ARG,
   stripes_long_ARG, stripesize_ARG, test_ARG, thin_ARG, thinpool_ARG,
   trackchanges_ARG, type_ARG, uncache_ARG, usepolicies_ARG, zero_ARG)

xx(lvcreate,
   "Create a logical volume",
   0,
   "lvcreate\n"
   "\t[-A|--autobackup {y|n}]\n"
   "\t[-a|--activate [a|e|l]{y|n}]\n"
   "\t[--addtag Tag]\n"
   "\t[--alloc AllocationPolicy]\n"
   "\t[-H|--cache\n"
   "\t  [--cachemode {writeback|writethrough}]\n"
   "\t  [--cachepolicy policy]\n"
   "\t  [--cachesettings key=value]\n"
   "\t[--cachepool CachePoolLogicalVolume{Name|Path}]\n"
   "\t[-c|--chunksize ChunkSize]\n"
   "\t[-C|--contiguous {y|n}]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|-?|--help]\n"
   "\t[--errorwhenfull {y|n}]\n"
   "\t[--ignoremonitoring]\n"
   "\t[--monitor {y|n}]\n"
   "\t[-i|--stripes Stripes [-I|--stripesize StripeSize]]\n"
   "\t[-k|--setactivationskip {y|n}]\n"
   "\t[-K|--ignoreactivationskip]\n"
   "\t{-l|--extents LogicalExtentsNumber[%{VG|PVS|FREE}] |\n"
   "\t -L|--size LogicalVolumeSize[bBsSkKmMgGtTpPeE]}\n"
   "\t[-M|--persistent {y|n}] [-j|--major major] [--minor minor]\n"
   "\t[--metadataprofile ProfileName]\n"
   "\t[-m|--mirrors Mirrors [--nosync]\n"
   "\t  [{--mirrorlog {disk|core|mirrored}|--corelog}]]\n"
   "\t[-n|--name LogicalVolumeName]\n"
   "\t[--noudevsync]\n"
   "\t[-p|--permission {r|rw}]\n"
   //"\t[--pooldatasize DataSize[bBsSkKmMgGtTpPeE]]\n"
   "\t[--poolmetadatasize MetadataSize[bBsSkKmMgG]]\n"
   "\t[--poolmetadataspare {y|n}]]\n"
   "\t[--[raid]minrecoveryrate Rate]\n"
   "\t[--[raid]maxrecoveryrate Rate]\n"
   "\t[-r|--readahead {ReadAheadSectors|auto|none}]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-R|--regionsize MirrorLogRegionSize]\n"
   "\t[-T|--thin\n"
   "\t  [--discards {ignore|nopassdown|passdown}]\n"
   "\t[--thinpool ThinPoolLogicalVolume{Name|Path}]\n"
   "\t[-t|--test]\n"
   "\t[--type VolumeType]\n"
   "\t[-v|--verbose]\n"
   "\t[-W|--wipesignatures {y|n}]\n"
   "\t[-Z|--zero {y|n}]\n"
   "\t[--version]\n"
   "\tVolumeGroupName [PhysicalVolumePath...]\n\n"

   "lvcreate\n"
   "\t{ {-s|--snapshot} OriginalLogicalVolume[Path] |\n"
   "\t  [-s|--snapshot] VolumeGroupName[Path] -V|--virtualsize VirtualSize}\n"
   "\t  {-H|--cache} VolumeGroupName[Path][/OriginalLogicalVolume]\n"
   "\t  {-T|--thin} VolumeGroupName[Path][/PoolLogicalVolume]\n"
   "\t              -V|--virtualsize VirtualSize}\n"
   "\t[-A|--autobackup {y|n}]\n"
   "\t[--addtag Tag]\n"
   "\t[--alloc AllocationPolicy]\n"
   "\t[--cachepolicy Policy] [--cachesettings Key=Value]\n"
   "\t[-c|--chunksize]\n"
   "\t[-C|--contiguous {y|n}]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[--discards {ignore|nopassdown|passdown}]\n"
   "\t[-h|-?|--help]\n"
   "\t[--ignoremonitoring]\n"
   "\t[--monitor {y|n}]\n"
   "\t[-i|--stripes Stripes [-I|--stripesize StripeSize]]\n"
   "\t[-k|--setactivationskip {y|n}]\n"
   "\t[-K|--ignoreactivationskip]\n"
   "\t{-l|--extents LogicalExtentsNumber[%{VG|FREE|ORIGIN}] |\n"
   "\t -L|--size LogicalVolumeSize[bBsSkKmMgGtTpPeE]}\n"
   //"\t[--pooldatasize DataVolumeSize[bBsSkKmMgGtTpPeE]]\n"
   "\t[--poolmetadatasize MetadataVolumeSize[bBsSkKmMgG]]\n"
   "\t[-M|--persistent {y|n}] [-j|--major major] [--minor minor]\n"
   "\t[--metadataprofile ProfileName]\n"
   "\t[-n|--name LogicalVolumeName]\n"
   "\t[--noudevsync]\n"
   "\t[-p|--permission {r|rw}]\n"
   "\t[-r|--readahead ReadAheadSectors|auto|none]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-t|--test]\n"
   "\t[{--thinpool ThinPoolLogicalVolume[Path] |\n"
   "\t  --cachepool CachePoolLogicalVolume[Path]}]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[PhysicalVolumePath...]\n\n",

   addtag_ARG, alloc_ARG, autobackup_ARG, activate_ARG, available_ARG,
   cache_ARG, cachemode_ARG, cachepool_ARG, cachepolicy_ARG, cachesettings_ARG,
   chunksize_ARG, contiguous_ARG, corelog_ARG, discards_ARG, errorwhenfull_ARG,
   extents_ARG, ignoreactivationskip_ARG, ignoremonitoring_ARG, major_ARG,
   metadataprofile_ARG, minor_ARG, mirrorlog_ARG, mirrors_ARG, monitor_ARG,
   minrecoveryrate_ARG, maxrecoveryrate_ARG, name_ARG, nosync_ARG,
   noudevsync_ARG, permission_ARG, persistent_ARG,
   //pooldatasize_ARG,
   poolmetadatasize_ARG, poolmetadataspare_ARG,
   raidminrecoveryrate_ARG, raidmaxrecoveryrate_ARG,
   readahead_ARG, regionsize_ARG, reportformat_ARG, setactivationskip_ARG,
   size_ARG, snapshot_ARG, stripes_ARG, stripesize_ARG, test_ARG, thin_ARG,
   thinpool_ARG, type_ARG, virtualoriginsize_ARG, virtualsize_ARG,
   wipesignatures_ARG, zero_ARG)

xx(lvdisplay,
   "Display information about a logical volume",
   PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT | LOCKD_VG_SH,
   "lvdisplay\n"
   "\t[-a|--all]\n"
   "\t[-c|--colon]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|--help]\n"
   "\t[-H|--history]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[-m|--maps]\n"
   "\t[--nosuffix]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[LogicalVolume[Path] [LogicalVolume[Path]...]]\n"
   "\n"
   "lvdisplay --columns|-C\n"
   "\t[--aligned]\n"
   "\t[-a|--all]\n"
   "\t[--binary]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--configreport ReportName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|--help]\n"
   "\t[-H|--history]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[--logonly]\n"
   "\t[--noheadings]\n"
   "\t[--nosuffix]\n"
   "\t[-o|--options [+|-|#]Field[,Field]]\n"
   "\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
   "\t[-S|--select Selection]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[--segments]\n"
   "\t[--separator Separator]\n"
   "\t[--unbuffered]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[LogicalVolume[Path] [LogicalVolume[Path]...]]\n",

    aligned_ARG, all_ARG, binary_ARG, colon_ARG, columns_ARG,
    configreport_ARG, foreign_ARG, history_ARG, ignorelockingfailure_ARG,
    ignoreskippedcluster_ARG, logonly_ARG, maps_ARG, noheadings_ARG,
    nosuffix_ARG, options_ARG, sort_ARG, partial_ARG, readonly_ARG,
    reportformat_ARG, segments_ARG, select_ARG, separator_ARG,
    shared_ARG, unbuffered_ARG, units_ARG)

xx(lvextend,
   "Add space to a logical volume",
   0,
   "lvextend\n"
   "\t[-A|--autobackup y|n]\n"
   "\t[--alloc AllocationPolicy]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--force]\n"
   "\t[-h|--help]\n"
   "\t[-i|--stripes Stripes [-I|--stripesize StripeSize]]\n"
   "\t{-l|--extents [+]LogicalExtentsNumber[%{VG|LV|PVS|FREE|ORIGIN}] |\n"
   "\t -L|--size [+]LogicalVolumeSize[bBsSkKmMgGtTpPeE]}\n"
   "\t --poolmetadatasize [+]MetadataVolumeSize[bBsSkKmMgG]}\n"
   "\t[-m|--mirrors Mirrors]\n"
   "\t[--nosync]\n"
   "\t[--use-policies]\n"
   "\t[-n|--nofsck]\n"
   "\t[--noudevsync]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-r|--resizefs]\n"
   "\t[-t|--test]\n"
   "\t[--type VolumeType]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tLogicalVolume[Path] [ PhysicalVolumePath... ]\n",

   alloc_ARG, autobackup_ARG, extents_ARG, force_ARG, mirrors_ARG,
   nofsck_ARG, nosync_ARG, noudevsync_ARG, poolmetadatasize_ARG,
   reportformat_ARG, resizefs_ARG, size_ARG, stripes_ARG, stripesize_ARG,
   test_ARG, type_ARG, usepolicies_ARG)

xx(lvmchange,
   "With the device mapper, this is obsolete and does nothing.",
   0,
   "lvmchange\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[-R|--reset]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n",

    reset_ARG)

xx(lvmconfig,
   "Display and manipulate configuration information",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "lvmconfig\n"
   "\t[-f|--file filename]\n"
   "\t[--type {current|default|diff|full|list|missing|new|profilable|profilable-command|profilable-metadata}]\n"
   "\t[--atversion version]\n"
   "\t[--ignoreadvanced]\n"
   "\t[--ignoreunsupported]\n"
   "\t[--ignorelocal]\n"
   "\t[-l|--list]\n"
   "\t[--config ConfigurationString]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--profile ProfileName]\n"
   "\t[--metadataprofile ProfileName]\n"
   "\t[--mergedconfig]\n"
   "\t[--sinceversion version]\n"
   "\t[--showdeprecated]\n"
   "\t[--showunsupported]\n"
   "\t[--validate]\n"
   "\t[--withsummary]\n"
   "\t[--withcomments]\n"
   "\t[--withspaces]\n"
   "\t[--unconfigured]\n"
   "\t[--withversions]\n"
   "\t[ConfigurationNode...]\n",
   atversion_ARG, configtype_ARG, file_ARG, ignoreadvanced_ARG,
   ignoreunsupported_ARG, ignorelocal_ARG, list_ARG, mergedconfig_ARG, metadataprofile_ARG,
   sinceversion_ARG, showdeprecated_ARG, showunsupported_ARG, validate_ARG, withsummary_ARG,
   withcomments_ARG, withspaces_ARG, unconfigured_ARG, withversions_ARG)

xx(lvmdiskscan,
   "List devices that may be used as physical volumes",
   PERMITTED_READ_ONLY | ENABLE_ALL_DEVS,
   "lvmdiskscan\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[-l|--lvmpartition]\n"
   "\t[--readonly]\n"
   "\t[--version]\n",

   lvmpartition_ARG, readonly_ARG)

xx(lvmsadc,
   "Collect activity data",
   0,
   "lvmsadc\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[LogFilePath]\n")

xx(lvmsar,
   "Create activity report",
   0,
   "lvmsar\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--full]\n"
   "\t[-h|--help]\n"
   "\t[-s|--stdin]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tLogFilePath\n",

   full_ARG, stdin_ARG)

xx(lvreduce,
   "Reduce the size of a logical volume",
   0,
   "lvreduce\n"
   "\t[-A|--autobackup y|n]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--force]\n"
   "\t[-h|--help]\n"
   "\t{-l|--extents [-]LogicalExtentsNumber[%{VG|LV|FREE|ORIGIN}] |\n"
   "\t -L|--size [-]LogicalVolumeSize[bBsSkKmMgGtTpPeE]}\n"
   "\t[-n|--nofsck]\n"
   "\t[--noudevsync]\n"
   "\t[-r|--resizefs]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[-y|--yes]\n"
   "\tLogicalVolume[Path]\n",

   autobackup_ARG, force_ARG,  extents_ARG, nofsck_ARG, noudevsync_ARG,
   reportformat_ARG, resizefs_ARG, size_ARG, test_ARG)

xx(lvremove,
   "Remove logical volume(s) from the system",
   ALL_VGS_IS_DEFAULT, /* all VGs only with --select */
   "lvremove\n"
   "\t[-A|--autobackup y|n]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--force]\n"
   "\t[-h|--help]\n"
   "\t[--nohistory]\n"
   "\t[--noudevsync]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tLogicalVolume[Path] [LogicalVolume[Path]...]\n",

   autobackup_ARG, force_ARG, nohistory_ARG, noudevsync_ARG,
   reportformat_ARG, select_ARG, test_ARG)

xx(lvrename,
   "Rename a logical volume",
   0,
   "lvrename\n"
   "\t[-A|--autobackup {y|n}]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|-?|--help]\n"
   "\t[--noudevsync]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t{ OldLogicalVolumePath NewLogicalVolumePath |\n"
   "\t  VolumeGroupName OldLogicalVolumeName NewLogicalVolumeName }\n",

   autobackup_ARG, noudevsync_ARG, reportformat_ARG, test_ARG)

xx(lvresize,
   "Resize a logical volume",
   0,
   "lvresize\n"
   "\t[-A|--autobackup y|n]\n"
   "\t[--alloc AllocationPolicy]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--force]\n"
   "\t[-h|--help]\n"
   "\t[-i|--stripes Stripes [-I|--stripesize StripeSize]]\n"
   "\t{-l|--extents [+|-]LogicalExtentsNumber[%{VG|LV|PVS|FREE|ORIGIN}] |\n"
   "\t -L|--size [+|-]LogicalVolumeSize[bBsSkKmMgGtTpPeE]}\n"
   "\t --poolmetadatasize [+]MetadataVolumeSize[bBsSkKmMgG]}\n"
   "\t[-n|--nofsck]\n"
   "\t[--noudevsync]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-r|--resizefs]\n"
   "\t[-t|--test]\n"
   "\t[--type VolumeType]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tLogicalVolume[Path] [ PhysicalVolumePath... ]\n",

   alloc_ARG, autobackup_ARG, extents_ARG, force_ARG, nofsck_ARG,
   noudevsync_ARG, reportformat_ARG, resizefs_ARG,
   poolmetadatasize_ARG, size_ARG, stripes_ARG, stripesize_ARG,
   test_ARG, type_ARG)

xx(lvs,
   "Display information about logical volumes",
   PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT | LOCKD_VG_SH,
   "lvs\n"
   "\t[-a|--all]\n"
   "\t[--aligned]\n"
   "\t[--binary]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--configreport ReportName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|--help]\n"
   "\t[-H|--history]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[--logonly]\n"
   "\t[--nameprefixes]\n"
   "\t[--noheadings]\n"
   "\t[--nosuffix]\n"
   "\t[-o|--options [+|-|#]Field[,Field]]\n"
   "\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[--rows]\n"
   "\t[--segments]\n"
   "\t[-S|--select Selection]\n"
   "\t[--separator Separator]\n"
   "\t[--trustcache]\n"
   "\t[--unbuffered]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[--unquoted]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[LogicalVolume[Path] [LogicalVolume[Path]...]]\n",

   aligned_ARG, all_ARG, binary_ARG, configreport_ARG, foreign_ARG, history_ARG,
   ignorelockingfailure_ARG, ignoreskippedcluster_ARG, logonly_ARG,
   nameprefixes_ARG, noheadings_ARG, nolocking_ARG, nosuffix_ARG,
   options_ARG, partial_ARG, readonly_ARG, reportformat_ARG, rows_ARG,
   segments_ARG, select_ARG, separator_ARG, shared_ARG, sort_ARG,
   trustcache_ARG, unbuffered_ARG, units_ARG, unquoted_ARG)

xx(lvscan,
   "List all logical volumes in all volume groups",
   PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT | LOCKD_VG_SH | NO_LVMETAD_AUTOSCAN,
   "lvscan\n"
   "\t[-a|--all]\n"
   "\t[-b|--blockdevice]\n"
   "\t[--cache]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|-?|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n",

   all_ARG, blockdevice_ARG, ignorelockingfailure_ARG, partial_ARG,
   readonly_ARG, reportformat_ARG, cache_long_ARG)

xx(pvchange,
   "Change attributes of physical volume(s)",
   0,
   "pvchange\n"
   "\t[-a|--all]\n"
   "\t[-A|--autobackup y|n]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--force]\n"
   "\t[-h|--help]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[--metadataignore y|n]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[-t|--test]\n"
   "\t[-u|--uuid]\n"
   "\t[-x|--allocatable y|n]\n"
   "\t[-v|--verbose]\n"
   "\t[--addtag Tag]\n"
   "\t[--deltag Tag]\n"
   "\t[--version]\n"
   "\t[PhysicalVolumePath...]\n",

   all_ARG, allocatable_ARG, allocation_ARG, autobackup_ARG, deltag_ARG,
   addtag_ARG, force_ARG, ignoreskippedcluster_ARG, metadataignore_ARG,
   reportformat_ARG, select_ARG, test_ARG, uuid_ARG)

xx(pvresize,
   "Resize physical volume(s)",
   0,
   "pvresize\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|-?|--help]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[--setphysicalvolumesize PhysicalVolumeSize[bBsSkKmMgGtTpPeE]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tPhysicalVolume [PhysicalVolume...]\n",

   physicalvolumesize_ARG, reportformat_ARG, test_ARG)

xx(pvck,
   "Check the consistency of physical volume(s)",
   LOCKD_VG_SH,
   "pvck "
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[--labelsector sector]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tPhysicalVolume [PhysicalVolume...]\n",

   labelsector_ARG)

xx(pvcreate,
   "Initialize physical volume(s) for use by LVM",
   ENABLE_ALL_DEVS,
   "pvcreate\n"
   "\t[--norestorefile]\n"
   "\t[--restorefile file]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f[f]|--force [--force]]\n"
   "\t[-h|-?|--help]\n"
   "\t[--labelsector sector]\n"
   "\t[-M|--metadatatype 1|2]\n"
   "\t[--pvmetadatacopies #copies]\n"
   "\t[--bootloaderareasize BootLoaderAreaSize[bBsSkKmMgGtTpPeE]]\n"
   "\t[--metadatasize MetadataSize[bBsSkKmMgGtTpPeE]]\n"
   "\t[--dataalignment Alignment[bBsSkKmMgGtTpPeE]]\n"
   "\t[--dataalignmentoffset AlignmentOffset[bBsSkKmMgGtTpPeE]]\n"
   "\t[--setphysicalvolumesize PhysicalVolumeSize[bBsSkKmMgGtTpPeE]\n"
   "\t[-t|--test]\n"
   "\t[-u|--uuid uuid]\n"
   "\t[-v|--verbose]\n"
   "\t[-y|--yes]\n"
   "\t[-Z|--zero {y|n}]\n"
   "\t[--version]\n"
   "\tPhysicalVolume [PhysicalVolume...]\n",

   dataalignment_ARG, dataalignmentoffset_ARG, bootloaderareasize_ARG,
   force_ARG, test_ARG, labelsector_ARG, metadatatype_ARG,
   metadatacopies_ARG, metadatasize_ARG, metadataignore_ARG,
   norestorefile_ARG, physicalvolumesize_ARG, pvmetadatacopies_ARG,
   reportformat_ARG, restorefile_ARG, uuidstr_ARG, zero_ARG)

xx(pvdata,
   "Display the on-disk metadata for physical volume(s)",
   0,
   "pvdata\n"
   "\t[-a|--all]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-E|--physicalextent]\n"
   "\t[-h|-?|--help]\n"
   "\t[-L|--logicalvolume]\n"
   "\t[-P[P]|--physicalvolume [--physicalvolume]]\n"
   "\t[-U|--uuidlist]\n"
   "\t[-v[v]|--verbose [--verbose]]\n"
   "\t[-V|--volumegroup]\n"
   "\t[--version]\n"
   "\tPhysicalVolume [PhysicalVolume...]\n",

   all_ARG,  logicalextent_ARG, physicalextent_ARG,
   physicalvolume_ARG, uuidlist_ARG, volumegroup_ARG)

xx(pvdisplay,
   "Display various attributes of physical volume(s)",
   CACHE_VGMETADATA | PERMITTED_READ_ONLY | ENABLE_ALL_DEVS | ENABLE_DUPLICATE_DEVS | LOCKD_VG_SH,
   "pvdisplay\n"
   "\t[-c|--colon]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[-m|--maps]\n"
   "\t[--nosuffix]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[-s|--short]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[PhysicalVolumePath [PhysicalVolumePath...]]\n"
   "\n"
   "pvdisplay --columns|-C\n"
   "\t[--aligned]\n"
   "\t[-a|--all]\n"
   "\t[--binary]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--configreport ReportName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[--logonly]\n"
   "\t[--noheadings]\n"
   "\t[--nosuffix]\n"
   "\t[-o|--options [+|-|#]Field[,Field]]\n"
   "\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[--readonly]\n"
   "\t[--separator Separator]\n"
   "\t[--unbuffered]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[PhysicalVolumePath [PhysicalVolumePath...]]\n",

   aligned_ARG, all_ARG, binary_ARG, colon_ARG, columns_ARG, configreport_ARG,
   foreign_ARG, ignorelockingfailure_ARG, ignoreskippedcluster_ARG,
   logonly_ARG, maps_ARG, noheadings_ARG, nosuffix_ARG, options_ARG,
   readonly_ARG, reportformat_ARG, select_ARG, separator_ARG, shared_ARG,
   short_ARG, sort_ARG, unbuffered_ARG, units_ARG)

/* ALL_VGS_IS_DEFAULT is for polldaemon to find pvmoves in-progress using process_each_vg. */

xx(pvmove,
   "Move extents from one physical volume to another",
   ALL_VGS_IS_DEFAULT | DISALLOW_TAG_ARGS,
   "pvmove\n"
   "\t[--abort]\n"
   "\t[--alloc AllocationPolicy]\n"
   "\t[--atomic]\n"
   "\t[-A|--autobackup {y|n}]\n"
   "\t[-b|--background]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n "
   "\t[-h|-?|--help]\n"
   "\t[-i|--interval seconds]\n"
   "\t[--noudevsync]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-t|--test]\n "
   "\t[-v|--verbose]\n "
   "\t[--version]\n"
   "\t[{-n|--name} LogicalVolume]\n"
/* "\t[{-n|--name} LogicalVolume[:LogicalExtent[-LogicalExtent]...]]\n" */
   "\tSourcePhysicalVolume[:PhysicalExtent[-PhysicalExtent]...]}\n"
   "\t[DestinationPhysicalVolume[:PhysicalExtent[-PhysicalExtent]...]...]\n",

   abort_ARG, alloc_ARG, atomic_ARG, autobackup_ARG, background_ARG,
   interval_ARG, name_ARG, noudevsync_ARG, reportformat_ARG, test_ARG)

xx(lvpoll,
   "Continue already initiated poll operation on a logical volume",
   0,
   "\t[--abort]\n"
   "\t[-A|--autobackup {y|n}]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n "
   "\t[-h|-?|--help]\n"
   "\t[--handlemissingpvs]\n"
   "\t[-i|--interval seconds]\n"
   "\t[--polloperation]\n"
   "\t[-t|--test]\n "
   "\t[-v|--verbose]\n "
   "\t[--version]\n",

   abort_ARG, autobackup_ARG, handlemissingpvs_ARG, interval_ARG, polloperation_ARG,
   test_ARG)

xx(pvremove,
   "Remove LVM label(s) from physical volume(s)",
   ENABLE_ALL_DEVS,
   "pvremove\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f[f]|--force [--force]]\n"
   "\t[-h|-?|--help]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[-y|--yes]\n"
   "\tPhysicalVolume [PhysicalVolume...]\n",

   force_ARG, reportformat_ARG, test_ARG)

xx(pvs,
   "Display information about physical volumes",
   CACHE_VGMETADATA | PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT | ENABLE_ALL_DEVS | ENABLE_DUPLICATE_DEVS | LOCKD_VG_SH,
   "pvs\n"
   "\t[-a|--all]\n"
   "\t[--aligned]\n"
   "\t[--binary]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--configreport ReportName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|-?|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[--logonly]\n"
   "\t[--nameprefixes]\n"
   "\t[--noheadings]\n"
   "\t[--nosuffix]\n"
   "\t[-o|--options [+|-|#]Field[,Field]]\n"
   "\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[--rows]\n"
   "\t[--segments]\n"
   "\t[-S|--select Selection]\n"
   "\t[--separator Separator]\n"
   "\t[--trustcache]\n"
   "\t[--unbuffered]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[--unquoted]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[PhysicalVolume [PhysicalVolume...]]\n",

   aligned_ARG, all_ARG, binary_ARG, configreport_ARG, foreign_ARG,
   ignorelockingfailure_ARG, ignoreskippedcluster_ARG, logonly_ARG,
   nameprefixes_ARG, noheadings_ARG, nolocking_ARG, nosuffix_ARG,
   options_ARG, partial_ARG, readonly_ARG, reportformat_ARG, rows_ARG,
   segments_ARG, select_ARG, separator_ARG, shared_ARG, sort_ARG,
   trustcache_ARG, unbuffered_ARG, units_ARG, unquoted_ARG)

xx(pvscan,
   "List all physical volumes",
   PERMITTED_READ_ONLY | LOCKD_VG_SH | NO_LVMETAD_AUTOSCAN,
   "pvscan\n"
   "\t[-b|--background]\n"
   "\t[--cache [-a|--activate ay] [ DevicePath | -j|--major major --minor minor]...]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t{-e|--exported | -n|--novolumegroup}\n"
   "\t[-h|-?|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-s|--short]\n"
   "\t[-u|--uuid]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n",

   activate_ARG, available_ARG, backgroundfork_ARG, cache_long_ARG,
   exported_ARG, ignorelockingfailure_ARG, major_ARG, minor_ARG,
   novolumegroup_ARG, partial_ARG, readonly_ARG, reportformat_ARG,
   short_ARG, uuid_ARG)

xx(segtypes,
   "List available segment types",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "segtypes\n")

xx(systemid,
   "Display the system ID, if any, currently set on this host",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "systemid\n")

xx(tags,
   "List tags defined on this host",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "tags\n")

xx(vgcfgbackup,
   "Backup volume group configuration(s)",
   PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT | LOCKD_VG_SH,
   "vgcfgbackup\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--file filename]\n"
   "\t[--foreign]\n"
   "\t[-h|-?|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[VolumeGroupName...]\n",

   file_ARG, foreign_ARG, ignorelockingfailure_ARG, partial_ARG, readonly_ARG,
   reportformat_ARG)

xx(vgcfgrestore,
   "Restore volume group configuration",
   0,
   "vgcfgrestore\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--file filename]\n"
   "\t[--force]\n"
   "\t[-l[l]|--list [--list]]\n"
   "\t[-M|--metadatatype 1|2]\n"
   "\t[-h|--help]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tVolumeGroupName",

   file_ARG, force_long_ARG, list_ARG, metadatatype_ARG, test_ARG)

xx(vgchange,
   "Change volume group attributes",
   CACHE_VGMETADATA | PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT,
   "vgchange\n"
   "\t[-A|--autobackup {y|n}]\n"
   "\t[--alloc AllocationPolicy]\n"
   "\t[-P|--partial]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[--detachprofile]\n"
   "\t[-h|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoremonitoring]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[-K|--ignoreactivationskip]\n"
   "\t[--metadataprofile ProfileName]\n"
   "\t[--monitor {y|n}]\n"
   "\t[--[vg]metadatacopies #copies]\n"
   "\t[--poll {y|n}]\n"
   "\t[--noudevsync]\n"
   "\t[--refresh]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[--sysinit]\n"
   "\t[--systemid SystemID]\n"
   "\t[-t|--test]\n"
   "\t[-u|--uuid]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t{-a|--activate [a|e|l]{y|n}  |\n"
   "\t[--activationmode {complete|degraded|partial}]\n"
   "\t -c|--clustered {y|n} |\n"
   "\t -x|--resizeable {y|n} |\n"
   "\t -l|--logicalvolume MaxLogicalVolumes |\n"
   "\t -p|--maxphysicalvolumes MaxPhysicalVolumes |\n"
   "\t -s|--physicalextentsize PhysicalExtentSize[bBsSkKmMgGtTpPeE] |\n"
   "\t --addtag Tag |\n"
   "\t --deltag Tag}\n"
   "\t[VolumeGroupName...]\n",

   activationmode_ARG, addtag_ARG, alloc_ARG, allocation_ARG, autobackup_ARG,
   activate_ARG, available_ARG, clustered_ARG, deltag_ARG, detachprofile_ARG,
   ignoreactivationskip_ARG, ignorelockingfailure_ARG, ignoremonitoring_ARG,
   ignoreskippedcluster_ARG, logicalvolume_ARG, maxphysicalvolumes_ARG,
   metadataprofile_ARG, monitor_ARG, noudevsync_ARG, metadatacopies_ARG,
   vgmetadatacopies_ARG, partial_ARG, physicalextentsize_ARG, poll_ARG,
   refresh_ARG, reportformat_ARG, resizeable_ARG, resizable_ARG, select_ARG,
   sysinit_ARG, systemid_ARG, test_ARG, uuid_ARG, lockstart_ARG, lockstop_ARG,
   locktype_ARG, lockopt_ARG, force_ARG)

xx(vgck,
   "Check the consistency of volume group(s)",
   ALL_VGS_IS_DEFAULT | LOCKD_VG_SH,
   "vgck "
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[VolumeGroupName...]\n",

   reportformat_ARG)

xx(vgconvert,
   "Change volume group metadata format",
   0,
   "vgconvert\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[--labelsector sector]\n"
   "\t[-M|--metadatatype 1|2]\n"
   "\t[--pvmetadatacopies #copies]\n"
   "\t[--metadatasize MetadataSize[bBsSkKmMgGtTpPeE]]\n"
   "\t[--bootloaderareasize BootLoaderAreaSize[bBsSkKmMgGtTpPeE]]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tVolumeGroupName [VolumeGroupName...]\n",

   force_ARG, test_ARG, labelsector_ARG, bootloaderareasize_ARG,
   metadatatype_ARG, metadatacopies_ARG, pvmetadatacopies_ARG,
   metadatasize_ARG, reportformat_ARG)

xx(vgcreate,
   "Create a volume group",
   MUST_USE_ALL_ARGS | ENABLE_ALL_DEVS,
   "vgcreate\n"
   "\t[-A|--autobackup {y|n}]\n"
   "\t[--addtag Tag]\n"
   "\t[--alloc AllocationPolicy]\n"
   "\t[-c|--clustered {y|n}]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[-l|--maxlogicalvolumes MaxLogicalVolumes]\n"
   "\t[--metadataprofile ProfileName]\n"
   "\t[-M|--metadatatype 1|2]\n"
   "\t[--[vg]metadatacopies #copies]\n"
   "\t[-p|--maxphysicalvolumes MaxPhysicalVolumes]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-s|--physicalextentsize PhysicalExtentSize[bBsSkKmMgGtTpPeE]]\n"
   "\t[--systemid SystemID]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[-y|--yes]\n"
   "\t[ PHYSICAL DEVICE OPTIONS ]\n"
   "\tVolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]\n",

   addtag_ARG, alloc_ARG, autobackup_ARG, clustered_ARG, maxlogicalvolumes_ARG,
   maxphysicalvolumes_ARG, metadataprofile_ARG, metadatatype_ARG,
   physicalextentsize_ARG, test_ARG, force_ARG, zero_ARG, labelsector_ARG,
   metadatasize_ARG, pvmetadatacopies_ARG, reportformat_ARG, metadatacopies_ARG,
   vgmetadatacopies_ARG, dataalignment_ARG, dataalignmentoffset_ARG,
   shared_ARG, systemid_ARG, locktype_ARG, lockopt_ARG)

xx(vgdisplay,
   "Display volume group information",
   PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT | LOCKD_VG_SH,
   "vgdisplay\n"
   "\t[-A|--activevolumegroups]\n"
   "\t[-c|--colon | -s|--short | -v|--verbose]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[--nosuffix]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[--version]\n"
   "\t[VolumeGroupName [VolumeGroupName...]]\n"
   "\n"
   "vgdisplay --columns|-C\n"
   "\t[--aligned]\n"
   "\t[--binary]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--configreport ReportName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[--logonly]\n"
   "\t[--noheadings]\n"
   "\t[--nosuffix]\n"
   "\t[-o|--options [+|-|#]Field[,Field]]\n"
   "\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
   "\t[-P|--partial]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[--readonly]\n"
   "\t[--separator Separator]\n"
   "\t[--unbuffered]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[--verbose]\n"
   "\t[--version]\n"
   "\t[VolumeGroupName [VolumeGroupName...]]\n",

   activevolumegroups_ARG, aligned_ARG, binary_ARG, colon_ARG, columns_ARG,
   configreport_ARG, foreign_ARG, ignorelockingfailure_ARG,
   ignoreskippedcluster_ARG, logonly_ARG, noheadings_ARG, nosuffix_ARG,
   options_ARG, partial_ARG, readonly_ARG, reportformat_ARG, select_ARG,
   shared_ARG, short_ARG, separator_ARG, sort_ARG, unbuffered_ARG, units_ARG)

xx(vgexport,
   "Unregister volume group(s) from the system",
   ALL_VGS_IS_DEFAULT,
   "vgexport\n"
   "\t[-a|--all]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tVolumeGroupName [VolumeGroupName...]\n",

   all_ARG, reportformat_ARG, select_ARG, test_ARG)

xx(vgextend,
   "Add physical volumes to a volume group",
   MUST_USE_ALL_ARGS | ENABLE_ALL_DEVS,
   "vgextend\n"
   "\t[-A|--autobackup y|n]\n"
   "\t[--restoremissing]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--force]\n"
   "\t[-h|--help]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[-y|--yes]\n"
   "\t[ PHYSICAL DEVICE OPTIONS ]\n"
   "\tVolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]\n",

   autobackup_ARG, test_ARG,
   force_ARG, zero_ARG, labelsector_ARG, metadatatype_ARG,
   metadatasize_ARG, pvmetadatacopies_ARG, metadatacopies_ARG,
   metadataignore_ARG, dataalignment_ARG, dataalignmentoffset_ARG,
   reportformat_ARG, restoremissing_ARG)

xx(vgimport,
   "Register exported volume group with system",
   ALL_VGS_IS_DEFAULT | NO_LVMETAD_AUTOSCAN,
   "vgimport\n"
   "\t[-a|--all]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--force]\n"
   "\t[-h|--help]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tVolumeGroupName...\n",

   all_ARG, force_ARG, reportformat_ARG, select_ARG, test_ARG)

xx(vgimportclone,
   "Import a VG from cloned PVs",
   NO_LVMETAD_AUTOSCAN,
   "vgimportclone\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[-i|--import]\n"
   "\t[-n|--basevgname]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[PhysicalVolumePath...]\n",

   basevgname_ARG, test_ARG, import_ARG)

xx(vgmerge,
   "Merge volume groups",
   0,
   "vgmerge\n"
   "\t[-A|--autobackup y|n]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[-l|--list]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tDestinationVolumeGroupName SourceVolumeGroupName\n",

   autobackup_ARG, list_ARG, test_ARG)

xx(vgmknodes,
   "Create the special files for volume group devices in /dev",
   ALL_VGS_IS_DEFAULT,
   "vgmknodes\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--refresh]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[VolumeGroupName...]\n",

   ignorelockingfailure_ARG, refresh_ARG, reportformat_ARG)

xx(vgreduce,
   "Remove physical volume(s) from a volume group",
   0,
   "vgreduce\n"
   "\t[-a|--all]\n"
   "\t[-A|--autobackup y|n]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[--mirrorsonly]\n"
   "\t[--removemissing]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-f|--force]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tVolumeGroupName\n"
   "\t[PhysicalVolumePath...]\n",

   all_ARG, autobackup_ARG, force_ARG, mirrorsonly_ARG, removemissing_ARG,
   reportformat_ARG, test_ARG)

xx(vgremove,
   "Remove volume group(s)",
   ALL_VGS_IS_DEFAULT, /* all VGs only with select */
   "vgremove\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-f|--force]\n"
   "\t[-h|--help]\n"
   "\t[--noudevsync]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-S|--select Selection]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tVolumeGroupName [VolumeGroupName...]\n",

   force_ARG, noudevsync_ARG, reportformat_ARG, select_ARG, test_ARG)

xx(vgrename,
   "Rename a volume group",
   ALLOW_UUID_AS_NAME | REQUIRES_FULL_LABEL_SCAN,
   "vgrename\n"
   "\t[-A|--autobackup y|n]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tOldVolumeGroupPath NewVolumeGroupPath |\n"
   "\tOldVolumeGroupName NewVolumeGroupName\n",

   autobackup_ARG, force_ARG, reportformat_ARG, test_ARG)

xx(vgs,
   "Display information about volume groups",
   PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT | LOCKD_VG_SH,
   "vgs\n"
   "\t[--aligned]\n"
   "\t[--binary]\n"
   "\t[-a|--all]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[--configreport ReportName]\n"
   "\t[-d|--debug]\n"
   "\t[--foreign]\n"
   "\t[-h|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--ignoreskippedcluster]\n"
   "\t[--logonly]\n"
   "\t[--nameprefixes]\n"
   "\t[--noheadings]\n"
   "\t[--nosuffix]\n"
   "\t[-o|--options [+|-|#]Field[,Field]]\n"
   "\t[-O|--sort [+|-]key1[,[+|-]key2[,...]]]\n"
   "\t[-P|--partial]\n"
   "\t[--readonly]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[--rows]\n"
   "\t[-S|--select Selection]\n"
   "\t[--separator Separator]\n"
   "\t[--trustcache]\n"
   "\t[--unbuffered]\n"
   "\t[--units hHbBsSkKmMgGtTpPeE]\n"
   "\t[--unquoted]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\t[VolumeGroupName [VolumeGroupName...]]\n",

   aligned_ARG, all_ARG, binary_ARG, configreport_ARG, foreign_ARG,
   ignorelockingfailure_ARG, ignoreskippedcluster_ARG, logonly_ARG,
   nameprefixes_ARG, noheadings_ARG, nolocking_ARG, nosuffix_ARG,
   options_ARG, partial_ARG, readonly_ARG, reportformat_ARG, rows_ARG,
   select_ARG, separator_ARG, shared_ARG, sort_ARG, trustcache_ARG,
   unbuffered_ARG, units_ARG, unquoted_ARG)

xx(vgscan,
   "Search for all volume groups",
   PERMITTED_READ_ONLY | ALL_VGS_IS_DEFAULT | LOCKD_VG_SH | NO_LVMETAD_AUTOSCAN,
   "vgscan "
   "\t[--cache]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[--ignorelockingfailure]\n"
   "\t[--mknodes]\n"
   "\t[--notifydbus]\n"
   "\t[-P|--partial]\n"
   "\t[--reportformat {basic|json}]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n",

   cache_long_ARG, ignorelockingfailure_ARG, mknodes_ARG, notifydbus_ARG,
   partial_ARG, reportformat_ARG)

xx(vgsplit,
   "Move physical volumes into a new or existing volume group",
   0,
   "vgsplit\n"
   "\t[-A|--autobackup {y|n}]\n"
   "\t[--alloc AllocationPolicy]\n"
   "\t[-c|--clustered {y|n}]\n"
   "\t[--commandprofile ProfileName]\n"
   "\t[-d|--debug]\n"
   "\t[-h|--help]\n"
   "\t[-l|--maxlogicalvolumes MaxLogicalVolumes]\n"
   "\t[-M|--metadatatype 1|2]\n"
   "\t[--[vg]metadatacopies #copies]\n"
   "\t[-n|--name LogicalVolumeName]\n"
   "\t[-p|--maxphysicalvolumes MaxPhysicalVolumes]\n"
   "\t[-t|--test]\n"
   "\t[-v|--verbose]\n"
   "\t[--version]\n"
   "\tSourceVolumeGroupName DestinationVolumeGroupName\n"
   "\t[PhysicalVolumePath...]\n",

   alloc_ARG, autobackup_ARG, clustered_ARG,
   maxlogicalvolumes_ARG, maxphysicalvolumes_ARG,
   metadatatype_ARG, vgmetadatacopies_ARG, name_ARG, test_ARG)

xx(version,
   "Display software and driver version information",
   PERMITTED_READ_ONLY | NO_METADATA_PROCESSING,
   "version\n")
