I've been playing around with ZFS having finally accepted that it's mature enough I shouldn't get burned.
Now to migrate the home NAS box which is currently an LVM JBOD set up that's quite full, but I have quite a bit of space unallocated on just one drive.
I've been experimenting with zfs using zpools created on sparse files attached to loopback devices and replacing the loopback devices with physical partitions seems like a very flexible way forward.
I'm wondering what could happen if I were to take this idea to the extreme, and create sparse loopback devices of the same size as the existing hardware, within this already very full filesystem, and move files out of the LVM into the ZFS array.
In theory as long as the free space on the LVM filesystem stays enough to accomodate the growing ZFS, as the files are removed from it then it should keep going. Then eventually the LVM filesystem would be empty, apart from the actual ZFS images, which could be replaced with physical partitions.
I expect that there would be a serious performance impact due to fragmentation at the very least.
This sounds totally nuts on the surface, why copy files into another container on the same filesystem. So I believe this data set would benefit from switching on deduplication and compression so could potentially end up with a lot more free space. The main goal though is gaining the flexibility of having the data in a ZFS pool which can have it's 'drives' upgraded, ie replaced with physical hardware
This crazy question was inspired by this blog post on converting the raid level of an array using a loopback device as an interim hard drive replacement.