I run Fedora in VMware Fusion and needed more space in /home than I had initially anticipated. Luckily I had some space left on my Mac and shut shutdown the VM, went into the Fusion settings then increased the VMs disk size by 10GB after that I needed to apply the space to my /home patition which was an encrypted LV.
First step was to reboot into Single User Mode, from there I created a new ext2 partition (doesn’t really matter that it’s ext2, we’ll deal with that) with parted using the new free space this was /dev/sda3 You could also just extend the existing physical partition, but I felt safer doing it like this, and hey, that’s what LVM is for.
Take a look at your /etc/fstab and you’ll see the /dev/mapper/luks-biglonguuid device that is your encrypted partition
# Unmount the partition in question umount /home # Check the FS on the fedora-named luks device fsck.ext4 -C 0 -f /dev/mapper/luks-biglonguuid # Close the luks device cryptsetup luksClose luks-biglonguuid # After growing my VMWare virtual disk, I created a new partition with parted (/dev/sda3) # Make the new partition a PV, then extend your VG to the PV pvcreate /dev/sda3 vgextend vg_jordanfedora /dev/sda3 # Extend the home LV to take the extra space you need lvextend -L+10G /dev/vg_jordanfedora/lv_home # Open the crypt mounted on a temp device, here called "mytempdevice" cryptsetup luksOpen /dev/vg_jordanfedora/lv_home mytempdevice # Resize the crypt temp device cryptsetup --verbose resize mytempdevice # Mount it and make sure your files are there mount /dev/mapper/mytempdevice /home # It worked! Unmount it umount /home # Another fsck e2fsck -f /dev/mapper/mytempdevice # Grow the FS to match the size of the device resize2fs /dev/mapper/mytempdevice # Reboot the machine so fedora can do it's luks-biglonguuid decryption on boot reboot
And there you have it!
Originally learned this from here and expanded on the explanations a bit http://blog.gauner.org/blog/2010/01/23/resize-a-luks-partition-on-lvm/