Skip to main content

Expanding VM Filesystem Size

If the VM hits the size limit, but there is more space allocated, or you allocated the space. These steps will help with expanding the size of the volume.

Checking the Size
  1. Check Disk Usage to see which disk is affected
df -h
  1. Check volume group for free space
sudo vgdisplay

If there is no space, you will need to allocate more through Hypervisor. Note: even after allocating more space in the Hypervisor, vgdisplay may still show 0 free PE — this means the partition and PV inside the guest haven't been grown yet to see the new disk size. Continue to the next section.

Extending the Partition and Physical Volume

Growing the virtual disk on the Hypervisor does not automatically grow the partition table inside the guest. The dependency chain is: disk → partition → PV → VG → LV → filesystem. Each layer must be resized in order before lvextend has any free space to work with.

  1. Confirm partition layout and which partition holds the LVM PV (typically the last partition, e.g. sda3)
lsblk
  1. Grow the partition to consume the new disk space
sudo growpart /dev/sda 3

If growpart is not installed: sudo apt install cloud-guest-utils

  1. Resize the physical volume to match the new partition size
sudo pvresize /dev/sda3
  1. Confirm the VG now shows free PE matching the new space
sudo vgdisplay

Expanding filesystem
  1. Extend logical volume
sudo lvextend -l +100%FREE /dev/ubuntu-vg/ubuntu-lv

This will add remaining space to the root system

  1. Resize filesystem
sudo resize2fs /dev/ubuntu-vg/ubuntu-lv
  1. Verify disk size and usage
df -h /