oVirt – Can’t Expand VM Disk to New Size with LVM or resize2fs

kvm-virtualizationovirtUbuntu

I have a oVirt server with a VM, the VM was created with a 20GB disk but that quickly ran out of space so I added another 20GB to it and now I'm trying to expand the disk.

I have done this once before on an old VM and then I ran the following commands:

$ sudo lvm
lvm> lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
  Size of logical volume ubuntu-vg/ubuntu-lv changed from 4.00 GiB (1024 extents) to <49.00 GiB (12543 extents).
  Logical volume ubuntu-vg/ubuntu-lv successfully resized.
lvm> exit
  Exiting.



$ sudo lvm
lvm> lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
  Size of logical volume ubuntu-vg/ubuntu-lv changed from 4.00 GiB (1024 extents) to <49.00 GiB (12543 extents).
  Logical volume ubuntu-vg/ubuntu-lv successfully resized.
lvm> exit
  Exiting.
$ sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
resize2fs 1.45.5 (07-Jan-2020)
Filesystem at /dev/mapper/ubuntu--vg-ubuntu--lv is mounted on /; on-line resizing required old_desc_blocks = 1, new_desc_blocks = 7
The filesystem on /dev/mapper/ubuntu--vg-ubuntu--lv is now 12844032 (4k) blocks long.
$ df -h
Filesystem                         Size  Used Avail Use% Mounted on
udev                               949M     0  949M   0% /dev
tmpfs                              199M  1.2M  198M   1% /run
/dev/mapper/ubuntu--vg-ubuntu--lv   49G  3.8G   43G   9% /
tmpfs                              993M     0  993M   0% /dev/shm
tmpfs                              5.0M     0  5.0M   0% /run/lock
tmpfs                              993M     0  993M   0% /sys/fs/cgroup
/dev/sda2                          976M  107M  803M  12% /boot
/dev/loop0                          28M   28M     0 100% /snap/snapd/7264
/dev/loop1                          55M   55M     0 100% /snap/core18/1705
/dev/loop2                          69M   69M     0 100% /snap/lxd/14804
/dev/loop3                          33M   33M     0 100% /snap/snapd/12159
/dev/loop4                          56M   56M     0 100% /snap/core18/2074
/dev/loop5                          62M   62M     0 100% /snap/core20/1026
/dev/loop6                          67M   67M     0 100% /snap/lxd/20840
tmpfs                              199M     0  199M   0% /run/user/1000

And that expanded the disk but now for some reason on my new VM these commands does not work and I get the following output:

$ sudo lvm
lvm> lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
  New size (4863 extents) matches existing size (4863 extents).
lvm>



$ sudo resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
resize2fs 1.45.5 (07-Jan-2020)
The filesystem is already 4979712 (4k) blocks long.  Nothing to do!

Looking into fdisk -l I have the following:

Disk /dev/loop0: 54.97 MiB, 57614336 bytes, 112528 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop1: 55.45 MiB, 58134528 bytes, 113544 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop2: 61.79 MiB, 64770048 bytes, 126504 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop3: 68.26 MiB, 71573504 bytes, 139792 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop4: 68.17 MiB, 71475200 bytes, 139600 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop5: 27.9 MiB, 28405760 bytes, 55480 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/loop6: 32.3 MiB, 33865728 bytes, 66144 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 sectors
Disk model: QEMU HARDDISK
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: EFA99D35-85DD-4D0D-A4DE-19514BF6AE89

Device       Start      End  Sectors Size Type
/dev/sda1     2048     4095     2048   1M BIOS boot
/dev/sda2     4096  2101247  2097152   1G Linux filesystem
/dev/sda3  2101248 41940991 39839744  19G Linux filesystem


Disk /dev/mapper/ubuntu--vg-ubuntu--lv: 18.102 GiB, 20396900352 bytes, 39837696                                                                                                              sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Best Answer

You haven't expanded the disk partition yet. This is the first step and for some reason you are trying to skip it (and another mandatory step).

Device       Start      End  Sectors Size Type
/dev/sda3  2101248 41940991 39839744  19G Linux filesystem

Use the growpart tool to expand the partition safely. Remember that it takes the block device and partition number as separate arguments.

sudo growpart /dev/sda 3

Install it if you don't already have it installed.

Once that is done you can move on to resizing the PV and then the LV.

sudo pvresize /dev/sda3

... the rest of what you were trying to do.