The Linux Logical Volume Manager (LVM) is a mechanism for virtualizing disks. It can create “virtual” disk partitions out of one or more physical hard drives, allowing you to grow, shrink, or move those partitions from drive to drive as your needs change.
The coolest part of Logical Volume Management is the ability to resize disks without powering off the machine or even interrupting service. Disks can be added and the volume groups can be extended onto the disks. This can be used in conjunction with software or hardware RAID as well.
Physical volumes your physical disks or disk partitions, such as /dev/hda or /dev/hdb1 -> combine multiple physical volumes into volume groups.
Volume groups comprised of real physical volumes -> create logical volumes which you can create/resize/remove and use. You can consider a volume group as a “virtual partition” which is comprised of an arbitary number of physical volumes. Ex: (VG1 = /dev/sda1 + /dev/sdb3 + /dev/sdc1)
logical volumes are the volumes that you’ll ultimately end up mounting upon your system. They can be added, removed, and resized on the fly. Since these are contained in the volume groups they can be bigger than any single physical volume you might have. (ie. 4x5Gb drives can be combined into one 20Gb volume group, and you can then create two 10Gb logical volumes.)
PVLM: Physical volumes -> Volume group -> Logical volume -> Mount on filesystem
Create Physiscal volumes
pvcreate /dev/sda1
pvcreate /dev/sdb
pvcreate /dev/sdc2
pvdisplay
pvs
Create Volume group
vgreate datavg /dev/sda1 /dev/sdb
vgextend datavg /dev/sdc2
vgdisplay
vgs
Create Logical volume
lvcreate -n backup –size 500G datavg
Display Logical volume information
lvdisplay
lvs
Mount logical volume into filesystem
mkfs.ext4 /dev/datavg/backup
mkdir /srv/backup
mount /dev/datavg/backup /srv/backup
/dev/datavg/backup /srv/backup ext4 defaults 0 2
Resize Logical volume when system online
#extend 200GB available on free space of /dev/datavg/backup
lvextend -L +200G /dev/datavg/backup
#extend the size by the amount of free space on physical volume /dev/sdc2
lvextend /dev/datavg/backup /dev/sdc2
resize2fs -p /dev/datavg/backup
Watch the resize process going on with df -h