Quello che stai cercando si chiama dispositivo loop. Fa apparire i file come dispositivi come /dev/loop0
ecc. Possono quindi essere montati come filesystem e dovrebbero funzionare con md. Dalla pagina man loop(4)
:
Il dispositivo loop è un dispositivo a blocchi che mappa i suoi blocchi di dati non su un dispositivo fisico come un disco rigido o un'unità disco ottico, ma sui blocchi di un normale file in un filesystem o su un altro dispositivo a blocchi.
Vedi ad esempio
- https://man7.org/linux/man-pages/man4/loop.4.html
- https://man7.org/linux/man-pages/man8/losetup.8.html
Per testare cose che richiedono dispositivi a blocchi, anche LVM potrebbe essere utile. Ti consente di creare più volumi logici da una singola partizione fisica (o viceversa) e distruggere/ricreare/ridimensionare i volumi è anche molto più semplice che con le partizioni del disco.
Puoi farlo. Basta creare un dispositivo loop dal file e utilizzare quel dispositivo per creare l'array:
$ dd if=/dev/zero of=mydev count=80 bs=1M
$ sudo losetup -f mydev
Avrai un dispositivo 80M pronto e potrai utilizzarlo in qualsiasi contesto in cui utilizzeresti un dispositivo a blocchi.
$ sudo losetup -l
Ti dirà la mappatura attuale.