Since you went back to the previous Snapshot you could boot from a LIVE CD that supports LVM Partitions (Like
SYSTEM RESCUE CD ) maybe read a little just to start on working with LVM Partitions. Anyway the normal steps there are after booting from the live cd (This are going to be several command lines not gui bases):
- Do NOT mount any of the LVM (Obvious reasons. you are going to resize it so do not mounted yet.)
- Do a fsck to the partition you want to change. Just in case.
- First do
e2fsck -f PARTITION
- Since we want to remove space from /home and give it to root we do:
4.1. Do resize2fs PARTITION SIZE
or resize2fs -f PARTITION SIZE
to the HOME partition before you use lvreduce on it. Remember that you MUST have enough space free for the final size after the resize is made. Do a resize2fs -p on the new home partition size just to make sure it has the correct block size.
4.2 Use lvextend on the ROOT partition and then do resize2fs PARTITION SIZE
or resize2fs -f PARTITION SIZE
on it. And do again a resize2fs -p on it to make sure it has the correct block size.
NOTE - After doing lvreduce or lvextend to each partition you need to do e2fsck -fn
to force a check on the partition for consistency (It will read-only the partition and check if even if it is clean)
An example for the lvm tools:
lvreduce -L -35G "Home Partition"
- Home Partition will have 35GB less.
lvextend -L +35G "Root Partition"
- Root Partition will have 35GB more.
Hope this helps in figuring out how to do it and with the snapshots am guessing you will.
UPDATE - After doing a curious search found another user from Red Hat, similar problem: https://serverfault.com/questions/13666/how-can-i-resize-a-lvm-partition-in-red-hat-without-lose-of-data
UPDATE2 - Added what psusi says in the comments since THAT is the correct way and i need to drink coffee before reading/writing something.
UPDATE3 - Thank psusi below for the several corrections.
NOTE - This is for partitions made with ext2/3/4 and am guessing blocks that are not 1K/2K since i read somewhere that it did not work for them (Not tested since i have 512 Bytes)