# salt.modules.linux_lvm

Support for Linux LVM2

salt.modules.linux_lvm.fullversion()

  Return all version info from lvm version

  CLI Example:

      salt '*' lvm.fullversion

salt.modules.linux_lvm.lvcreate(lvname, vgname, size=None, extents=None, snapshot=None, pv=None, thinvolume=False, thinpool=False, force=False, **kwargs)

  Create a new logical volume, with option for which physical volume to be used

  CLI Examples:

      salt '*' lvm.lvcreate new_volume_name     vg_name size=10G
      salt '*' lvm.lvcreate new_volume_name     vg_name extents=100 pv=/dev/sdb
      salt '*' lvm.lvcreate new_snapshot        vg_name snapshot=volume_name size=3G

  Added in version 0.12.0.

  Support for thin pools and thin volumes

  CLI Examples:

      salt '*' lvm.lvcreate new_thinpool_name   vg_name               size=20G thinpool=True
      salt '*' lvm.lvcreate new_thinvolume_name vg_name/thinpool_name size=10G thinvolume=True

salt.modules.linux_lvm.lvdisplay(lvname='', quiet=False)

  Return information about the logical volume(s)

  lvname

    logical device name

  quiet

    if the logical volume is not present, do not show any error

  CLI Examples:

      salt '*' lvm.lvdisplay
      salt '*' lvm.lvdisplay /dev/vg_myserver/root

salt.modules.linux_lvm.lvextend(size=None, lvpath=None, extents=None, force=False, resizefs=False)

  Increase a logical volume to specific size.

  CLI Examples:

      salt '*' lvm.lvextend +12M /dev/mapper/vg1-test
      salt '*' lvm.lvextend lvpath=/dev/mapper/vg1-test extents=+100%FREE

salt.modules.linux_lvm.lvremove(lvname, vgname, force=True)

  Remove a given existing logical volume from a named existing volume group

  CLI Example:

      salt '*' lvm.lvremove lvname vgname force=True

salt.modules.linux_lvm.lvresize(size=None, lvpath=None, extents=None, force=False, resizefs=False)

  Resize a logical volume to specific size.

  CLI Examples:

      salt '*' lvm.lvresize +12M /dev/mapper/vg1-test
      salt '*' lvm.lvresize lvpath=/dev/mapper/vg1-test extents=+100%FREE

salt.modules.linux_lvm.pvcreate(devices, override=True, force=True, **kwargs)

  Set a physical device to be used as an LVM physical volume

  override

    Skip devices, if they are already LVM physical volumes

  CLI Examples:

      salt mymachine lvm.pvcreate /dev/sdb1,/dev/sdb2
      salt mymachine lvm.pvcreate /dev/sdb1 dataalignmentoffset=7s

salt.modules.linux_lvm.pvdisplay(pvname='', real=False, quiet=False)

  Return information about the physical volume(s)

  pvname

    physical device name

  real

    dereference any symlinks and report the real device

    Added in version 2015.8.7.

  quiet

    if the physical volume is not present, do not show any error

  CLI Examples:

      salt '*' lvm.pvdisplay
      salt '*' lvm.pvdisplay /dev/md0

salt.modules.linux_lvm.pvremove(devices, override=True, force=True)

  Remove a physical device being used as an LVM physical volume

  override

    Skip devices, if they are already not used as LVM physical volumes

  CLI Examples:

      salt mymachine lvm.pvremove /dev/sdb1,/dev/sdb2

salt.modules.linux_lvm.pvresize(devices, override=True, force=True)

  Resize a LVM physical volume to the physical device size

  override

    Skip devices, if they are already not used as LVM physical volumes

  CLI Examples:

      salt mymachine lvm.pvresize /dev/sdb1,/dev/sdb2

salt.modules.linux_lvm.version()

  Return LVM version from lvm version

  CLI Example:

      salt '*' lvm.version

salt.modules.linux_lvm.vgcreate(vgname, devices, force=False, **kwargs)

  Create an LVM volume group

  CLI Examples:

      salt mymachine lvm.vgcreate my_vg /dev/sdb1,/dev/sdb2
      salt mymachine lvm.vgcreate my_vg /dev/sdb1 clustered=y

salt.modules.linux_lvm.vgdisplay(vgname='', quiet=False)

  Return information about the volume group(s)

  vgname

    volume group name

  quiet

    if the volume group is not present, do not show any error

  CLI Examples:

      salt '*' lvm.vgdisplay
      salt '*' lvm.vgdisplay nova-volumes

salt.modules.linux_lvm.vgextend(vgname, devices, force=False)

  Add physical volumes to an LVM volume group

  CLI Examples:

      salt mymachine lvm.vgextend my_vg /dev/sdb1,/dev/sdb2
      salt mymachine lvm.vgextend my_vg /dev/sdb1

salt.modules.linux_lvm.vgremove(vgname, force=True)

  Remove an LVM volume group

  CLI Examples:

      salt mymachine lvm.vgremove vgname
      salt mymachine lvm.vgremove vgname force=True