LVM Notes

These are just my basic notes that I wanted to share out with someone. LVM is a tricky beast to learn and I always refer back to this when enlarging disks on my VMs.

Making a larger partition from new disk space

Enlarge the partition with parted

1
2
3
parted (select disk)
resizepart #
100%

LVM: we need to tell the LV subsystem about the new disk space; we do this by first extending the physical volume which occupies the partition:

1
pvresize /dev/sdX#

then the logical volume

by percentage

1
lvresize -r -l 100%PVS /dev/mapper/XXXXXXXX

by GB

1
lvresize -r -L +4GB /dev/mapper/XXXXXXXXX

If df -h still shows the wrong size then the above command didn’t expand the FS as it should. This could be due to version issues of the tools. Run resize2fs on the mapped volume.

Moving disk space around

File system check the volume to be shrunk, then shrink it by several GB more than you will be reclaiming. It will be enlarged later. Shrink the volume by your desired amount.

Assuming an end goal of 200G

1
2
3
e2fsck -f /dev/foo/roo
resize2fs /dev/foo/roo 180G
lvreduce -L 200G /dev/foo/roo

Enlarge your target voume to take all now free space

1
lvresize -r -l 100%PVS /dev/foo/boo

Fix the filesystems

1
2
resize2fs /dev/foo/roo
resize2fs /dev/foo/boo

Shrinking XFS

You cannot shrink XFS. To get around this backup the data in your XFS volume and delete it. Do your required actions and then remake the XFS volume.

Updated: