BTRFS mirror instead of BTRFS on top of MD

Hi, coming from OMV I really like ZimaOS. Immediately bought got the + release, just to support the developers, I didn’t need any of the additional functionality. So thanks for all your work!

I’m struggling a bit though with the way ZimaOS handles it’s arrays. I have 2 4TB SSD’s in a mirror as my storage. In OMV I’ve always used a BTRFS mirror, for it has checksums and metadata. If one of the disks has errors, using the checksums BTRFS can (or should) still find the correct data, and repair the corrupt data.
Zima though creates a MD RAID1 mirror, and puts a ‘single disk’ BTRFS on top. This makes BTRFS unable to repair itself as it can never find out which data is the correct one when corruption occurs.

I found Zima can actually ‘enable’ BTRFS disks, and use them just fine. Will Zima in future allow full BTRFS arrays / disks in order to use it’s full potential? Would there be anything against using a BTRFS mirror right now?

You’re correct in your understanding.

ZimaOS currently uses MD RAID1 with BTRFS on top, so while checksums can detect corruption, BTRFS can’t self-heal because it only sees a single block device.

A native BTRFS mirror (raid1 for data + metadata) would allow proper self-healing, which is what you’re used to from OMV.

You can use a BTRFS mirror manually on ZimaOS and it will mount and work, but it’s not managed by the ZimaOS storage UI, so you’d need to handle it outside the system and avoid modifying it via the UI.

It would definitely be a good feature request to support native BTRFS RAID in the future, as it unlocks the full benefits of the filesystem.