NAME
       lvcreate - create a logical volume in an existing volume group

SYNOPSIS
       lvcreate  [--addtag  Tag]  [--alloc  AllocationPolicy]  [-a|--available
       y|n|ey|en|ly|ln]   [-A|--autobackup    y|n]    [-C|--contiguous    y|n]
       [-d|--debug] [-h|-?|--help] [--noudevsync] [--ignoremonitoring] [--mon-
       itor  {y|n}]  [-i|--stripes   Stripes   [-I|--stripesize   StripeSize]]
       {-l|--extents LogicalExtentsNumber[%{VG|PVS|FREE}] |
        -L|--size  LogicalVolumeSize[bBsSkKmMgGtTpPeE]}  [-M|--persistent y|n]
       [--minor   minor]   [-m|--mirrors   Mirrors   [--nosync]   [--mirrorlog
       {disk|core|mirrored}]   [--corelog]  [-R|--regionsize  MirrorLogRegion-
       Size]]    [-n|--name    LogicalVolumeName]    [-p|--permission    r|rw]
       [-r|--readahead  ReadAheadSectors|auto|none]  [-t|--test]  [--type Seg-
       mentType] [-v|--verbose] [-Z|--zero y|n] VolumeGroupName  [PhysicalVol-
       umePath[:PE[-PE]]...]

       lvcreate {-l|--extents LogicalExtentsNumber[%{VG|FREE|ORIGIN}] |
        -L|--size  LogicalVolumeSize[bBsSkKmMgGtTpPeE]} [-c|--chunksize Chunk-
       Size] [--noudevsync] [--ignoremonitoring] [--monitor  {y|n}]  -n|--name
       SnapshotLogicalVolumeName  {{-s|--snapshot} OriginalLogicalVolumePath |
       [-s|--snapshot] VolumeGroupName -V|--virtualsize VirtualSize}

DESCRIPTION
       lvcreate creates a new logical volume in a volume group  (  see  vgcre-
       ate(8), vgchange(8) ) by allocating logical extents from the free phys-
       ical extent pool of that volume group.  If there are  not  enough  free
       physical  extents  then  the  volume  group can be extended ( see vgex-
       tend(8) ) with other physical volumes or by reducing  existing  logical
       volumes  of this volume group in size ( see lvreduce(8) ). If you spec-
       ify one or more PhysicalVolumes, allocation of physical extents will be
       restricted to these volumes.
       The second form supports the creation of snapshot logical volumes which
       keep the contents of the original logical volume for backup purposes.

OPTIONS
       See lvm for common options.

       -a, --available y|n|ey|en|ly|ln
              Controls the availability of the Logical Volumes  for  immediate
              use after the command finishes running.  By default, new Logical
              Volumes are activated automatically (-ay).  If  it  is  possible
              technically,  -an  will  leave  the new Logical Volume inactive.
              But for example, snapshots can only be  created  in  the  active
              state  so  -an  cannot  be  used  with --snapshot.  Normally the
              --zero n argument has to be supplied too  because  zeroing  (the
              default behaviour) also requires activation.  If clustered lock-
              ing is enabled, -aey will activate exclusively on one  node  and
              -aly will activate only on the local node.

       -c, --chunksize ChunkSize
              Power of 2 chunk size for the snapshot logical volume between 4k
              and 512k.

       -C, --contiguous y|n
              Sets or resets the contiguous allocation policy for logical vol-
              umes.  Default  is no contiguous allocation based on a next free
              principle.

       -i, --stripes Stripes
              Gives the number of stripes.  This is equal  to  the  number  of
              physical volumes to scatter the logical volume.

       -I, --stripesize StripeSize
              Gives  the  number  of  kilobytes  for  the  granularity  of the
              stripes.
              StripeSize must be 2^n (n = 2 to 9) for metadata in LVM1 format.
              For  metadata  in  LVM2  format, the stripe size may be a larger
              power of 2 but must not exceed the physical extent size.

       -l, --extents LogicalExtentsNumber[%{VG|PVS|FREE|ORIGIN}]
              Gives the number of logical extents to allocate for the new log-
              ical  volume.   The number can also be expressed as a percentage
              of the total space in the Volume Group with the suffix %VG, as a
              percentage  of the remaining free space in the Volume Group with
              the suffix %FREE, as a percentage of the  remaining  free  space
              for  the  specified  PhysicalVolume(s)  with the suffix %PVS, or
              (for a snapshot) as a percentage of the total space in the  Ori-
              gin Logical Volume with the suffix %ORIGIN.

       -L, --size LogicalVolumeSize[bBsSkKmMgGtTpPeE]
              Gives  the  size to allocate for the new logical volume.  A size
              suffix of K for kilobytes, M for megabytes, G for  gigabytes,  T
              for terabytes, P for petabytes or E for exabytes is optional.
              Default unit is megabytes.

       --minor minor
              Set the minor number.

       -M, --persistent y|n
              Set to y to make the minor number specified persistent.

       -m, --mirrors Mirrors
              Creates  a  mirrored  logical  volume  with Mirrors copies.  For
              example, specifying "-m 1" would result in a  mirror  with  two-
              sides; that is, a linear volume plus one copy.

              Specifying  the  optional  argument --nosync will cause the cre-
              ation of the mirror to skip the initial resynchronization.   Any
              data  written afterwards will be mirrored, but the original con-
              tents will not be copied.  This is useful for skipping a  poten-
              tially  long  and  resource  intensive  initial sync of an empty
              device.

              The optional argument --mirrorlog specifies the type of  log  to
              be  used.  The default is disk, which is persistent and requires
              a small amount of storage space, usually on  a  separate  device
              from  the  data  being mirrored.  Using core means the mirror is
              regenerated by copying the data from the first device again each
              time  the  device is activated, for example, after every reboot.
              Using "mirrored" will create a persistent  log  that  is  itself
              mirrored.

              The  optional  argument  --corelog  is equivalent to --mirrorlog
              core.

       -n, --name LogicalVolumeName
              The name for the new logical volume.
              Without this option a default names of "lvol#" will be generated
              where # is the LVM internal number of the logical volume.

       --noudevsync
              Disable  udev  synchronisation.  The  process  will not wait for
              notification from udev.  It will continue  irrespective  of  any
              possible udev processing in the background.  You should only use
              this if udev is not running or has rules that ignore the devices
              LVM2 creates.

       --monitor y|n
              Start  or avoid monitoring a mirrored or snapshot logical volume
              with dmeventd, if it is installed.  If a device used by a  moni-
              tored  mirror  reports  an  I/O  error,  the  failure is handled
              according to mirror_image_fault_policy and mirror_log_fault_pol-
              icy set in lvm.conf.

       --ignoremonitoring
              Make  no  attempt  to interact with dmeventd unless --monitor is
              specified.

       -p, --permission r|rw
              Set access permissions to read only or read and write.
              Default is read and write.

       -r, --readahead ReadAheadSectors|auto|none
              Set read ahead sector count of this logical volume.  For  volume
              groups  with  metadata  in  lvm1  format,  this  must be a value
              between 2 and 120.  The default value is "auto" which allows the
              kernel  to  choose  a  suitable  value automatically.  "None" is
              equivalent to specifying zero.

       -R, --regionsize MirrorLogRegionSize
              A mirror is divided into regions of this size (in MB),  and  the
              mirror  log  uses this granularity to track which regions are in
              sync.

       -s, --snapshot
              Create a snapshot logical volume (or snapshot) for an  existing,
              so  called  original logical volume (or origin).  Snapshots pro-
              vide a 'frozen image' of the contents of the  origin  while  the
              origin  can still be updated. They enable consistent backups and
              online recovery of removed/overwritten data/files. The  snapshot
              does  not  need  the same amount of storage the origin has. In a
              typical scenario, 15-20% might be enough. In case  the  snapshot
              runs  out  of  storage,  use lvextend(8) to grow it. Shrinking a
              snapshot is supported by lvreduce(8) as well.  Run  lvdisplay(8)
              on  the snapshot in order to check how much data is allocated to
              it.  Note that a small amount of the space you allocate  to  the
              snapshot  is  used to track the locations of the chunks of data,
              so you should allocate slightly more  space  than  you  actually
              need  and monitor the rate at which the snapshot data is growing
              so you can avoid running out of space.

       --type SegmentType
              Create a logical volume that uses  the  specified  segment  type
              (e.g. "raid5", "mirror", "snapshot").  Many segment types have a
              commandline switch alias that will enable their use  (-s  is  an
              alias for --type snapshot).  However, this argument must be used
              when no existing commandline switch alias is available  for  the
              desired  type,  as  is  the  case with "error", "zero", "raid4",
              "raid5", or "raid6".

       -V, --virtualsize VirtualSize
              Create a sparse device of the given  size  (in  MB  by  default)
              using  a  snapshot.   Anything  written  to  the  device will be
              returned when reading from it.  Reading from other areas of  the
              device will return blocks of zeros.  It is implemented by creat-
              ing a hidden virtual device of the requested size using the zero
              target.  A suffix of _vorigin is used for this device.

       -Z, --zero y|n
              Controls zeroing of the first KB of data in the new logical vol-
              ume.
              Default is yes.
              Volume will not be zeroed if read only flag is set.
              Snapshot volumes are zeroed always.

              Warning: trying to mount an unzeroed logical  volume  can  cause
              the system to hang.

Examples
       "lvcreate  -i  3  -I  8 -L 100M vg00" tries to create a striped logical
       volume with 3 stripes, a stripesize of 8KB and a size of 100MB  in  the
       volume  group  named  vg00.  The  logical volume name will be chosen by
       lvcreate.

       "lvcreate -m1 -L 500M vg00" tries to create  a  mirror  logical  volume
       with  2  sides  with  a  useable size of 500 MiB.  This operation would
       require 3 devices - two for the mirror devices and  one  for  the  disk
       log.

       "lvcreate  -m1  --mirrorlog core -L 500M vg00" tries to create a mirror
       logical volume with 2 sides with a useable size of 500 MiB.  This oper-
       ation would require 2 devices - the log is "in-memory".

       "lvcreate --size 100m --snapshot --name snap /dev/vg00/lvol1"
       creates a snapshot logical volume named /dev/vg00/snap which has access
       to the contents of the original logical volume named /dev/vg00/lvol1 at
       snapshot  logical  volume creation time. If the original logical volume
       contains a file system, you can mount the snapshot logical volume on an
       arbitrary  directory  in order to access the contents of the filesystem
       to run a backup while the original filesystem continues to get updated.

       "lvcreate --virtualsize 1T --size 100M --snapshot --name sparse vg1"
       creates  a  sparse  device named /dev/vg1/sparse of size 1TB with space
       for just under 100MB of actual data on it.

       "lvcreate -L 64M -n lvol1 vg00 /dev/sda:0-7 /dev/sdb:0-7"
       creates a linear logical volume  "vg00/lvol1"  using  physical  extents
       /dev/sda:0-7 and /dev/sdb:0-7 for allocation of extents.

       "lvcreate --type raid5 -L 5G -i 3 -I 64 -n my_lv vg00"
       creates  a 5GiB RAID5 logical volume "vg00/my_lv", with 3 stripes (plus
       a parity drive for a total of 4 devices) and a stripesize of 64kiB.

SEE ALSO
       lvm(8), vgcreate(8), lvremove(8), lvrename(8) lvextend(8), lvreduce(8),
       lvdisplay(8), lvscan(8)

Sistina Software UK LVM TOOLS 2.02.88(2)-RHEL5 (2012-01-20)        LVCREATE(8)