Advanced storage for home use
Hi, I'm looking for a new storage stack.
Here is some background info, you may skip:
I am currently running ZFS on Linux on two mirrored, encrypted (LUKS) 2TB drives and one encrypted 60GB SSD which acts as a read cache. I would like to know if there are any alternatives, because 1) I don't like recompiling kernel modules every time there is an update, using the development trunk, and hacking dracut scripts to make it boot. It's just a disaster waiting to happen. And 2) It would be nice to do encryption "above" the mirroring, so I don't have to encrypt the same data twice when writing.
Is there any filesystem, volume manager, etc. for Linux which has the following features:
1) Checksums for integrity protection of data and automatic correction using mirrored drives. Two times when I had messed around in the computer case, one of the drives started writing corrupted data, and if I didn't have checksums I wouldn't even know (maybe I'd get crashes, or artifacts in my videos).
2) Encryption. I'm not doing anything secret, but I've gotten used to having everything encrypted.
3) Caching. I can't afford to put all my data on SSD, so it would be nice to have a read cache. Maybe it could interoperate with bcache or Facebook flashcache. Memory caching is also great, but I can't rely on it -- suddenly some program will use 12 GB of RAM, and all my cache is cleared. ZFS has a good algorithm for RAM caching, which doesn't completely wipe the cache when doing backups or synchronizations, anything like that is great.
4) Performance. Shouldn't suck completely, should be able to feed a 1Gbit connection when transferring large files.
I hope someone can help me out with some ideas. I think btrfs doesn't have any advanced caching, and no built-in encryption, so I don't know if it's worth it. I'd lose the constant agony of wondering if my machine comes back after a reboot though. And I can't used FreeBSD, it doesn't have the graphics support so videos look incredibly ugly (not that anyone would suggest BSD on a Linux forum anyway).