Jak mówisz, mdadm metadata ver. 1.0 wykonuje pracę.
Udało mi się uzyskać działającą konfigurację, którą GA-C1037UN-EU EFI Gigabyte mógł uruchomić. Ta konfiguracja jest ograniczona do RAID1 dla partycji ESP, ale umożliwia użycie dowolnej konfiguracji RAID dla pozostałych partycji. Jako przykład pokażmy RAID1 na dwóch dyskach. Każdy dysk jest dzielony na partycje w następujący sposób:
sda (gpt)
--sda1 (512MB)
mdadm array member with 1.0 metadata format
boot and esp flags set
--sda2 (rest of disk)
mdadm array member with 1.2 metadata format
Pierwszy RAID utworzony na partycjach sdX1 na każdym dysku i użyty na partycji ESP. Resztę pojemności dysków można wykorzystać w dowolny sposób, na przykład również w RAID1. Niech pierwsza macierz RAID będzie /dev/md/efi
druga /dev/md/data
.
/dev/md/efi
nie powinien używać żadnych etykiet partycjonowania, takich jak MBR lub GPT. /dev/md/data
może być później podzielony na partycje lub użyty jako LVM pv. Na przykład:
/dev/md/efi
--fat32 fs, mounting to /boot/efi/
/dev/md/data
--/dev/md/data1
linux swap partition
--/dev/md/data2
ext4 root partition
... (other needed partitions)
Metadane ver. 1.0 ma jedną prostą funkcję: jego superblok jest przechowywany na końcu partycji RAID, więc BIOS może wykryć zwykłą partycję FAT32 z flagami ESP i BOOT. Nic więc nie stoi na przeszkodzie, aby BIOS przeszukał EFI / BOOT / BOOTX64.EFI na tej partycji i uruchomił się z niej.
Głównym ograniczeniem tej metody jest to, że GRUB powinien być skonfigurowany do instalowania rozruchowego pliku EFI w ścieżce dla nośników wymiennych, ponieważ efibootmgr
próbuje uruchomić BIOS bezpośrednio z md
urządzenia, a nie sdX
. Można to zrobić za grub-install
pomocą --removable
flagi.
UPD. Występują problemy ze zgodnością. Wypróbowałem tę samą konfigurację na płycie głównej ASUS P8Z68-V PRO / GEN3. System nie uruchamia się bez względu na to, co robię.