I recently cloned my ubuntu from a 250GB SSD to my new 2TB SSD. It automatically created an LVM with 248GB with my root filesystem in it. I would like to resize the LVM to full 2TB.
nvme0n1 259:1 0 1.8T 0 disk ├─nvme0n1p1 259:7 0 512M 0 part /boot/efi └─nvme0n1p2 259:8 0 1.8T 0 part ├─vgubuntu-root 253:0 0 231.4G 0 lvm / └─vgubuntu-swap_1 253:1 0 976M 0 lvm [SWAP]
However the PSize is only 250 GB, rather than 2TB fromsudo pvs
PV VG Fmt Attr PSize PFree /dev/nvme0n1p2 vgubuntu lvm2 a-- 232.38g 0
I see the following output from lvdisplay:
--- Logical volume --- LV Path /dev/vgubuntu/root LV Name root VG Name vgubuntu LV UUID 0wM6pq-o26o-qVBf-1x61-vFbP-Poyf-fFW3f7 LV Write Access read/write LV Creation host, time ubuntu, 2021-04-24 06:13:08 +0800 LV Status available # open 1 LV Size <231.43 GiB Current LE 59246 Segments 2 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 253:0
I tried the following lvextend command but it does not extend beyond 248GB size:
lvextend -l +100%FREE /dev/vgubuntu/root/
with the output:
New size (59246 extents) matches existing size (59246 extents).
Can someone please advise?
Thanks.
Jeffrey
2 Answers
You are close to extending it. The name we were looking for is what the LV Path states from the command of lvdisplay. LV Path shows the name as /dev/vgubuntu/root.
The command to extend it should be:
lvextend -l +100%FREE /dev/vgubuntu/root
Looks like what you need is growpart. I'm not sure which steps you already did. Here is what I did on a similar machine:
Before storage expansion, this is what I have
root@agw:~# lsblk /dev/vda
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
vda 252:0 0 20G 0 disk
├─vda1 252:1 0 1M 0 part
├─vda2 252:2 0 513M 0 part /boot/efi
└─vda3 252:3 0 19.5G 0 part
├─vgxubuntu-root 253:0 0 18.5G 0 lvm /
└─vgxubuntu-swap_1 253:1 0 976M 0 lvm [SWAP]
root@agw:~# vgs
VG #PV #LV #SN Attr VSize VFree
vgxubuntu 1 2 0 wz--n- 19.49g 0
I added 2G to the underlying disk. You'll see vda now has 22G of space, while vda3 is not automatically using all the space.
root@agw:~# lsblk /dev/vda
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
vda 252:0 0 22G 0 disk
├─vda1 252:1 0 1M 0 part
├─vda2 252:2 0 513M 0 part /boot/efi
└─vda3 252:3 0 19.5G 0 part
├─vgxubuntu-root 253:0 0 18.5G 0 lvm /
└─vgxubuntu-swap_1 253:1 0 976M 0 lvm [SWAP]
root@agw:~# vgs
VG #PV #LV #SN Attr VSize VFree
vgxubuntu 1 2 0 wz--n- 19.49g 0
After expanding vda3, run lvextend and resize2fs (if you're on ext4).
root@agw:~# growpart /dev/vda 3
CHANGED: partition=3 start=1054720 old: size=40888287 end=41943007 new: size=45082591 end=46137311
root@agw:~# pvs
PV VG Fmt Attr PSize PFree
/dev/vda3 vgxubuntu lvm2 a-- 21.49g 2.00g
root@agw:~# lvextend -l+100%FREE /dev/vgxubuntu/root
Size of logical volume vgxubuntu/root changed from <18.54 GiB (4746 extents) to <20.54 GiB (5258 extents).
Logical volume vgxubuntu/root successfully resized.
root@agw:~# df -hPT /
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/vgxubuntu-root ext4 19G 11G 7.2G 59% /
root@agw:~# resize2fs /dev/mapper/vgxubuntu-root
resize2fs 1.46.5 (30-Dec-2021)
Filesystem at /dev/mapper/vgxubuntu-root is mounted on /; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 3
The filesystem on /dev/mapper/vgxubuntu-root is now 5384192 (4k) blocks long.
root@agw:~# df -hPT /
Filesystem Type Size Used Avail Use% Mounted on
/dev/mapper/vgxubuntu-root ext4 21G 11G 9.1G 53% /