When buying droplets, as DigitalOcean calls their cloud VM's, they are always configured with one large ext4 partition.
I have an app that needs an LVM partition, so I need a creative way to shrink the root partition to e.g. 25%, and use the rest for LVM. I can do it on a fresh instance, where I can reboot all I want.
For performance reasons I really would like to avoid a loop device, where I create an LVM partition in a file on top of ext4.
Question
Can someone come up with a creative way to shrink a live ext4 filesystem, where reboots are fine?