{
    "mode": "man",
    "parameter": "vgsplit",
    "section": "8",
    "url": "https://www.chedong.com/phpMan.php/man/vgsplit/8/json",
    "generated": "2026-06-02T21:27:04Z",
    "synopsis": "vgsplit optionargs positionargs\n[ optionargs ]",
    "sections": {
        "NAME": {
            "content": "vgsplit - Move physical volumes into a new or existing volume group\n",
            "subsections": []
        },
        "SYNOPSIS": {
            "content": "vgsplit optionargs positionargs\n[ optionargs ]\n",
            "subsections": []
        },
        "DESCRIPTION": {
            "content": "vgsplit  moves  one  or more PVs from a source VG (the first VG arg) to a destination VG (the\nsecond VG arg).  The PV(s) to move are named after the source and destination VGs, or  an  LV\nis named, in which case the PVs underlying the LV are moved.\n\nIf  the  destination  VG  does not exist, a new VG is created (command options can be used to\nspecify properties of the new VG, also see vgcreate(8).)\n\nLVs cannot be split between VGs; each LV must be entirely on the PVs in the source or  desti‐\nnation VG.\n\nvgsplit can only move complete PVs. (See pvmove(8) for moving part of a PV.)\n",
            "subsections": []
        },
        "USAGE": {
            "content": "Split a VG by specified PVs.\n\nvgsplit VG VG PV ...\n[ COMMONOPTIONS ]\n\nSplit a VG by PVs in a specified LV.\n\nvgsplit -n|--name LV VG VG\n[ COMMONOPTIONS ]\n\nCommon options for command:\n[ -A|--autobackup y|n ]\n[ -l|--maxlogicalvolumes Number ]\n[ -p|--maxphysicalvolumes Number ]\n[ -M|--metadatatype lvm2 ]\n[    --alloc contiguous|cling|clingbytags|normal|anywhere|inherit ]\n[    --[vg]metadatacopies all|unmanaged|Number ]\n\nCommon options for lvm:\n[ -d|--debug ]\n[ -h|--help ]\n[ -q|--quiet ]\n[ -t|--test ]\n[ -v|--verbose ]\n[ -y|--yes ]\n[    --commandprofile String ]\n[    --config String ]\n[    --driverloaded y|n ]\n[    --lockopt String ]\n[    --longhelp ]\n[    --nolocking ]\n[    --profile String ]\n[    --version ]\n",
            "subsections": []
        },
        "OPTIONS": {
            "content": "--alloc contiguous|cling|clingbytags|normal|anywhere|inherit\nDetermines the allocation policy when a command needs to allocate Physical Extents\n(PEs) from the VG. Each VG and LV has an allocation policy which can be changed with\nvgchange/lvchange, or overriden on the command line.  normal applies common sense\nrules such as not placing parallel stripes on the same PV.  inherit applies the VG\npolicy to an LV.  contiguous requires new PEs be placed adjacent to existing PEs.\ncling places new PEs on the same PV as existing PEs in the same stripe of the LV.  If\nthere are sufficient PEs for an allocation, but normal does not use them, anywhere\nwill use them even if it reduces performance, e.g. by placing two stripes on the same\nPV.  Optional positional PV args on the command line can also be used to limit which\nPVs the command will use for allocation.  See lvm(8) for more information about allo‐\ncation.\n",
            "subsections": [
                {
                    "name": "-A --autobackup",
                    "content": "Specifies if metadata should be backed up automatically after a change.  Enabling this\nis strongly advised! See vgcfgbackup(8) for more information.\n\n--commandprofile String\nThe command profile to use for command configuration.  See lvm.conf(5) for more infor‐\nmation about profiles.\n\n--config String\nConfig settings for the command. These override lvm.conf settings.  The String arg\nuses the same format as lvm.conf, or may use section/field syntax.  See lvm.conf(5)\nfor more information about config.\n",
                    "flag": "-A",
                    "long": "--autobackup"
                },
                {
                    "name": "-d --debug",
                    "content": "Set debug level. Repeat from 1 to 6 times to increase the detail of messages sent to\nthe log file and/or syslog (if configured).\n\n--driverloaded y|n\nIf set to no, the command will not attempt to use device-mapper.  For testing and de‐\nbugging.\n",
                    "flag": "-d",
                    "long": "--debug"
                },
                {
                    "name": "-h --help",
                    "content": "Display help text.\n\n--lockopt String\nUsed to pass options for special cases to lvmlockd.  See lvmlockd(8) for more informa‐\ntion.\n",
                    "flag": "-h",
                    "long": "--help"
                },
                {
                    "name": "--longhelp",
                    "content": "Display long help text.\n",
                    "long": "--longhelp"
                },
                {
                    "name": "-l --maxlogicalvolumes",
                    "content": "Sets the maximum number of LVs allowed in a VG.\n",
                    "flag": "-l",
                    "long": "--maxlogicalvolumes"
                },
                {
                    "name": "-p --maxphysicalvolumes",
                    "content": "Sets the maximum number of PVs that can belong to the VG.  The value 0 removes any\nlimitation.  For large numbers of PVs, also see options --pvmetadatacopies, and --vg‐\nmetadatacopies for improving performance.\n",
                    "flag": "-p",
                    "long": "--maxphysicalvolumes"
                },
                {
                    "name": "-M --metadatatype",
                    "content": "Specifies the type of on-disk metadata to use.  lvm2 (or just 2) is the current, stan‐\ndard format.  lvm1 (or just 1) is no longer used.\n",
                    "flag": "-M",
                    "long": "--metadatatype"
                },
                {
                    "name": "-n --name",
                    "content": "Move only PVs used by the named LV.\n",
                    "flag": "-n",
                    "long": "--name"
                },
                {
                    "name": "--nolocking",
                    "content": "Disable locking.\n\n--profile String\nAn alias for --commandprofile or --metadataprofile, depending on the command.\n",
                    "long": "--nolocking"
                },
                {
                    "name": "-q --quiet",
                    "content": "Suppress output and log messages. Overrides --debug and --verbose.  Repeat once to\nalso suppress any prompts with answer 'no'.\n",
                    "flag": "-q",
                    "long": "--quiet"
                },
                {
                    "name": "-t --test",
                    "content": "Run in test mode. Commands will not update metadata.  This is implemented by disabling\nall metadata writing but nevertheless returning success to the calling function. This\nmay lead to unusual error messages in multi-stage operations if a tool relies on read‐\ning back metadata it believes has changed but hasn't.\n",
                    "flag": "-t",
                    "long": "--test"
                },
                {
                    "name": "-v --verbose",
                    "content": "Set verbose level. Repeat from 1 to 4 times to increase the detail of messages sent to\nstdout and stderr.\n",
                    "flag": "-v",
                    "long": "--verbose"
                },
                {
                    "name": "--version",
                    "content": "Display version information.\n\n--[vg]metadatacopies all|unmanaged|Number\nNumber of copies of the VG metadata that are kept.  VG metadata is kept in VG metadata\nareas on PVs in the VG, i.e. reserved space at the start and/or end of the PVs.  Keep‐\ning a copy of the VG metadata on every PV can reduce performance in VGs containing a\nlarge number of PVs.  When this number is set to a non-zero value, LVM will automati‐\ncally choose PVs on which to store metadata, using the metadataignore flags on PVs to\nachieve the specified number.  The number can also be replaced with special string\nvalues: unmanaged causes LVM to not automatically manage the PV metadataignore flags.\nall causes LVM to first clear the metadataignore flags on all PVs, and then to become\nunmanaged.\n",
                    "long": "--version"
                },
                {
                    "name": "-y --yes",
                    "content": "Do not prompt for confirmation interactively but always assume the answer yes. Use\nwith extreme caution.  (For automatic no, see -qq.)\n",
                    "flag": "-y",
                    "long": "--yes"
                }
            ]
        },
        "VARIABLES": {
            "content": "VG\nVolume Group name.  See lvm(8) for valid names.\n\nPV\nPhysical  Volume  name,  a device path under /dev.  For commands managing physical ex‐\ntents, a PV positional arg generally accepts a suffix indicating a range (or  multiple\nranges)  of  physical  extents (PEs). When the first PE is omitted, it defaults to the\nstart of the device, and when the last PE is omitted it defaults to  end.   Start  and\nend  range  (inclusive):  PV[:PE-PE]...   Start  and  length  range (counting from 0):\nPV[:PE+PE]...\n\nString\nSee the option description for information about the string content.\n\nSize[UNIT]\nSize is an input number that accepts an optional unit.  Input units are always treated\nas base two values, regardless of capitalization, e.g. 'k' and 'K' both refer to 1024.\nThe default input unit is specified by letter, followed  by  |UNIT.   UNIT  represents\nother  possible  input  units:  bBsSkKmMgGtTpPeE.  b|B is bytes, s|S is sectors of 512\nbytes, k|K is KiB, m|M is MiB, g|G is GiB, t|T is TiB, p|P is PiB, e|E is EiB.   (This\nshould  not  be  confused  with the output control --units, where capital letters mean\nmultiple of 1000.)\n",
            "subsections": []
        },
        "ENVIRONMENT VARIABLES": {
            "content": "See lvm(8) for information about environment variables used by lvm.  For example, LVMVGNAME\ncan generally be substituted for a required VG parameter.\n",
            "subsections": []
        },
        "SEE ALSO": {
            "content": "lvm(8) lvm.conf(5) lvmconfig(8)\n\npvchange(8)  pvck(8)  pvcreate(8)  pvdisplay(8) pvmove(8) pvremove(8) pvresize(8) pvs(8) pvs‐‐\ncan(8)\n\nvgcfgbackup(8) vgcfgrestore(8) vgchange(8) vgck(8) vgcreate(8) vgconvert(8) vgdisplay(8)  vg‐‐\nexport(8)  vgextend(8) vgimport(8) vgimportclone(8) vgmerge(8) vgmknodes(8) vgreduce(8) vgre‐‐\nmove(8) vgrename(8) vgs(8) vgscan(8) vgsplit(8)\n\nlvcreate(8) lvchange(8) lvconvert(8) lvdisplay(8) lvextend(8) lvreduce(8)  lvremove(8)  lvre‐‐\nname(8) lvresize(8) lvs(8) lvscan(8)\n\nlvm-fullreport(8) lvm-lvpoll(8) lvm2-activation-generator(8) blkdeactivate(8) lvmdump(8)\n\ndmeventd(8) lvmpolld(8) lvmlockd(8) lvmlockctl(8) cmirrord(8) lvmdbusd(8)\n\nlvmsystemid(7) lvmreport(7) lvmraid(7) lvmthin(7) lvmcache(7)\n\n\n\nRed Hat, Inc.                     LVM TOOLS 2.03.11(2) (2021-01-08)                       VGSPLIT(8)",
            "subsections": []
        }
    },
    "summary": "vgsplit - Move physical volumes into a new or existing volume group",
    "flags": [
        {
            "flag": "-A",
            "long": "--autobackup",
            "arg": null,
            "description": "Specifies if metadata should be backed up automatically after a change. Enabling this is strongly advised! See vgcfgbackup(8) for more information. --commandprofile String The command profile to use for command configuration. See lvm.conf(5) for more infor‐ mation about profiles. --config String Config settings for the command. These override lvm.conf settings. The String arg uses the same format as lvm.conf, or may use section/field syntax. See lvm.conf(5) for more information about config."
        },
        {
            "flag": "-d",
            "long": "--debug",
            "arg": null,
            "description": "Set debug level. Repeat from 1 to 6 times to increase the detail of messages sent to the log file and/or syslog (if configured). --driverloaded y|n If set to no, the command will not attempt to use device-mapper. For testing and de‐ bugging."
        },
        {
            "flag": "-h",
            "long": "--help",
            "arg": null,
            "description": "Display help text. --lockopt String Used to pass options for special cases to lvmlockd. See lvmlockd(8) for more informa‐ tion."
        },
        {
            "flag": "",
            "long": "--longhelp",
            "arg": null,
            "description": "Display long help text."
        },
        {
            "flag": "-l",
            "long": "--maxlogicalvolumes",
            "arg": null,
            "description": "Sets the maximum number of LVs allowed in a VG."
        },
        {
            "flag": "-p",
            "long": "--maxphysicalvolumes",
            "arg": null,
            "description": "Sets the maximum number of PVs that can belong to the VG. The value 0 removes any limitation. For large numbers of PVs, also see options --pvmetadatacopies, and --vg‐ metadatacopies for improving performance."
        },
        {
            "flag": "-M",
            "long": "--metadatatype",
            "arg": null,
            "description": "Specifies the type of on-disk metadata to use. lvm2 (or just 2) is the current, stan‐ dard format. lvm1 (or just 1) is no longer used."
        },
        {
            "flag": "-n",
            "long": "--name",
            "arg": null,
            "description": "Move only PVs used by the named LV."
        },
        {
            "flag": "",
            "long": "--nolocking",
            "arg": null,
            "description": "Disable locking. --profile String An alias for --commandprofile or --metadataprofile, depending on the command."
        },
        {
            "flag": "-q",
            "long": "--quiet",
            "arg": null,
            "description": "Suppress output and log messages. Overrides --debug and --verbose. Repeat once to also suppress any prompts with answer 'no'."
        },
        {
            "flag": "-t",
            "long": "--test",
            "arg": null,
            "description": "Run in test mode. Commands will not update metadata. This is implemented by disabling all metadata writing but nevertheless returning success to the calling function. This may lead to unusual error messages in multi-stage operations if a tool relies on read‐ ing back metadata it believes has changed but hasn't."
        },
        {
            "flag": "-v",
            "long": "--verbose",
            "arg": null,
            "description": "Set verbose level. Repeat from 1 to 4 times to increase the detail of messages sent to stdout and stderr."
        },
        {
            "flag": "",
            "long": "--version",
            "arg": null,
            "description": "Display version information. --[vg]metadatacopies all|unmanaged|Number Number of copies of the VG metadata that are kept. VG metadata is kept in VG metadata areas on PVs in the VG, i.e. reserved space at the start and/or end of the PVs. Keep‐ ing a copy of the VG metadata on every PV can reduce performance in VGs containing a large number of PVs. When this number is set to a non-zero value, LVM will automati‐ cally choose PVs on which to store metadata, using the metadataignore flags on PVs to achieve the specified number. The number can also be replaced with special string values: unmanaged causes LVM to not automatically manage the PV metadataignore flags. all causes LVM to first clear the metadataignore flags on all PVs, and then to become unmanaged."
        },
        {
            "flag": "-y",
            "long": "--yes",
            "arg": null,
            "description": "Do not prompt for confirmation interactively but always assume the answer yes. Use with extreme caution. (For automatic no, see -qq.)"
        }
    ],
    "examples": [],
    "see_also": [
        {
            "name": "lvm",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvm/8/json"
        },
        {
            "name": "lvm.conf",
            "section": "5",
            "url": "https://www.chedong.com/phpMan.php/man/lvm.conf/5/json"
        },
        {
            "name": "lvmconfig",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvmconfig/8/json"
        },
        {
            "name": "pvchange",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/pvchange/8/json"
        },
        {
            "name": "pvck",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/pvck/8/json"
        },
        {
            "name": "pvcreate",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/pvcreate/8/json"
        },
        {
            "name": "pvdisplay",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/pvdisplay/8/json"
        },
        {
            "name": "pvmove",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/pvmove/8/json"
        },
        {
            "name": "pvremove",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/pvremove/8/json"
        },
        {
            "name": "pvresize",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/pvresize/8/json"
        },
        {
            "name": "pvs",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/pvs/8/json"
        },
        {
            "name": "can",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/can/8/json"
        },
        {
            "name": "vgcfgbackup",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgcfgbackup/8/json"
        },
        {
            "name": "vgcfgrestore",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgcfgrestore/8/json"
        },
        {
            "name": "vgchange",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgchange/8/json"
        },
        {
            "name": "vgck",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgck/8/json"
        },
        {
            "name": "vgcreate",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgcreate/8/json"
        },
        {
            "name": "vgconvert",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgconvert/8/json"
        },
        {
            "name": "vgdisplay",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgdisplay/8/json"
        },
        {
            "name": "export",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/export/8/json"
        },
        {
            "name": "vgextend",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgextend/8/json"
        },
        {
            "name": "vgimport",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgimport/8/json"
        },
        {
            "name": "vgimportclone",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgimportclone/8/json"
        },
        {
            "name": "vgmerge",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgmerge/8/json"
        },
        {
            "name": "vgmknodes",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgmknodes/8/json"
        },
        {
            "name": "vgreduce",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgreduce/8/json"
        },
        {
            "name": "move",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/move/8/json"
        },
        {
            "name": "vgrename",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgrename/8/json"
        },
        {
            "name": "vgs",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgs/8/json"
        },
        {
            "name": "vgscan",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/vgscan/8/json"
        },
        {
            "name": "lvcreate",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvcreate/8/json"
        },
        {
            "name": "lvchange",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvchange/8/json"
        },
        {
            "name": "lvconvert",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvconvert/8/json"
        },
        {
            "name": "lvdisplay",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvdisplay/8/json"
        },
        {
            "name": "lvextend",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvextend/8/json"
        },
        {
            "name": "lvreduce",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvreduce/8/json"
        },
        {
            "name": "lvremove",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvremove/8/json"
        },
        {
            "name": "name",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/name/8/json"
        },
        {
            "name": "lvresize",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvresize/8/json"
        },
        {
            "name": "lvs",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvs/8/json"
        },
        {
            "name": "lvscan",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvscan/8/json"
        },
        {
            "name": "lvm-fullreport",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvm-fullreport/8/json"
        },
        {
            "name": "lvm-lvpoll",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvm-lvpoll/8/json"
        },
        {
            "name": "lvm2-activation-generator",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvm2-activation-generator/8/json"
        },
        {
            "name": "blkdeactivate",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/blkdeactivate/8/json"
        },
        {
            "name": "lvmdump",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvmdump/8/json"
        },
        {
            "name": "dmeventd",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/dmeventd/8/json"
        },
        {
            "name": "lvmpolld",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvmpolld/8/json"
        },
        {
            "name": "lvmlockd",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvmlockd/8/json"
        },
        {
            "name": "lvmlockctl",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvmlockctl/8/json"
        },
        {
            "name": "cmirrord",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/cmirrord/8/json"
        },
        {
            "name": "lvmdbusd",
            "section": "8",
            "url": "https://www.chedong.com/phpMan.php/man/lvmdbusd/8/json"
        },
        {
            "name": "lvmsystemid",
            "section": "7",
            "url": "https://www.chedong.com/phpMan.php/man/lvmsystemid/7/json"
        },
        {
            "name": "lvmreport",
            "section": "7",
            "url": "https://www.chedong.com/phpMan.php/man/lvmreport/7/json"
        },
        {
            "name": "lvmraid",
            "section": "7",
            "url": "https://www.chedong.com/phpMan.php/man/lvmraid/7/json"
        },
        {
            "name": "lvmthin",
            "section": "7",
            "url": "https://www.chedong.com/phpMan.php/man/lvmthin/7/json"
        },
        {
            "name": "lvmcache",
            "section": "7",
            "url": "https://www.chedong.com/phpMan.php/man/lvmcache/7/json"
        }
    ],
    "tldr": {
        "source": "cheatsh",
        "description": "",
        "examples": [
            {
                "description": "Split a volume group 'vg1' into two separate volume groups 'vg1' and 'vg2', moving logical volume 'lv1' to 'vg2'",
                "command": "vgsplit vg1 vg2 {{path}}"
            },
            {
                "description": "Split a volume group 'vg-source' into 'vg-destination', specifying the physical volume '/dev/sdXY' to move",
                "command": "vgsplit vg-source vg-destination {{path}}"
            },
            {
                "description": "Maintain metadata backup of volume groups while splitting",
                "command": "vgsplit --metadatacopies 2 vg1 vg2 {{path}}"
            },
            {
                "description": "Split a volume group and skip any prompts by confirming all changes automatically",
                "command": "vgsplit --yes vg1 vg2 {{path}}"
            },
            {
                "description": "Split a volume group with verbose output to show detailed operations during the split",
                "command": "vgsplit --verbose vg1 vg2 {{path}}"
            },
            {
                "description": "When running as part of a script, suppress all output except error messages",
                "command": "vgsplit --quiet vg1 vg2 {{path}}"
            }
        ]
    }
}