La partizione di sistema EFI può essere RAID?


12

Sto configurando un HTPC con Ubuntu a 64 bit, usando UEFI e RAID con dischi GPT.

È possibile che la partizione di sistema EFI (tipo di partizione 0xEF00) faccia parte di un array RAID1 mdadm? Spero che i metadati versione 1.0 (alla fine del disco) lo consentano.

Inoltre, cosa dovrebbe essere impostato anche "dispositivo per l'installazione del boot loader" o si applica solo ai dischi MBR?

Risposte:


6

Come dici tu, mdadm metadata ver. 1.0 fa il lavoro.

Sono riuscito a ottenere una configurazione funzionante che EFI GA-C1037UN-EU di Gigabyte è stato in grado di avviare. Questa configurazione è limitata a RAID1 per la partizione ESP, ma consente di utilizzare qualsiasi configurazione RAID per il resto delle partizioni. Mostriamo RAID1 su due unità come esempio. Ogni disco è partizionato nel modo seguente:

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

Primo RAID creato su partizioni SDX1 su ogni unità e utilizzato per la partizione ESP. Il resto della capacità delle unità può essere utilizzato in qualsiasi modo, ad esempio anche in RAID1. Lascia che sia il primo RAID /dev/md/efie il secondo /dev/md/data. /dev/md/efinon utilizzare etichette di partizionamento, come MBR o GPT. /dev/md/datapuò essere partizionato successivamente o utilizzato come LVM pv. Per esempio:

/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)

Metadata ver. 1.0 ha una semplice funzionalità: il superblocco è archiviato alla fine della partizione RAID, quindi il BIOS può rilevare la semplice partizione FAT32 con flag ESP e BOOT. Quindi nulla impedisce al BIOS di cercare EFI / BOOT / BOOTX64.EFI su questa partizione e di avviarlo.

La principale limitazione di questo metodo è che GRUB deve essere configurato per installare il file EFI avviabile nel percorso per i supporti rimovibili, perché efibootmgrsta cercando di eseguire l'avvio del BIOS direttamente dal mddispositivo sdX. Questo può essere fatto usando grub-installcon --removableflag.

UPD. Ci sono problemi di compatibilità. Ho provato la stessa configurazione sulla scheda madre ASUS P8Z68-V PRO / GEN3. Il sistema non si avvierà, qualunque cosa io faccia.


Mi chiedo anche cosa succede se il BIOS scrive in una delle partizioni
— sourcejedi

Che dire di mdadm 0.90 che dovrebbe supportare Grub più vecchio ( leggi questo )? Forse funzionerà per ASUS P8Z68.
— hrvoj3e,

L'ho provato ed è possibile solo con i metadati MD versione 1.0 perché la partizione ESP rimane in GPT e i metadati sono archiviati dietro. Con i metadati versione 2.0 la partizione è incorporata nel superblocco MD, quindi il firmware non può rilevarlo.
— Kouros,

5

Dopo molte sperimentazioni penso che questa sia la risposta:

La partizione di sistema EFI (solitamente montata su /boot/efi/) non contiene molti file, a meno che, ad esempio, GRUB non sia memorizzato direttamente lì anziché /boot/grub/. I contenuti di solito non cambiano, quindi non è necessario RAID la partizione. Avere più copie della partizione su diversi dischi richiederebbe anche l'impostazione delle voci di avvio UEFI efibootmgr; di solito GRUB lo inizializza in base alla partizione montata di /boot/efi/.

Quindi sembra che non sia necessario né facile da fare.


1
Ma supponiamo che tu voglia avere raid1 solo per sicurezza se un disco si guasta. Sarebbe "e non facile da fare". significa che è possibile?
— zidarsk8,

Che dire di tutte quelle guide che dicono di dimostrare sia una partizione di avvio che una partizione di sistema efi?
— CMCDragonkai,

4

Penso che la risposta breve sia: No, le partizioni di sistema EFI (ESP) non possono essere RAID-ed. Tuttavia, è ancora possibile ottenere vantaggi simili a RAID se si clona l'ESP tra i dischi RAID e si aggiungono entrambe le partizioni nella catena di avvio EFI. Per i dettagli, vedi Come installare Ubuntu 14.04 a 64 bit con una partizione RAID 1 a doppio avvio su un sistema UEFI / GPT? .


Quale suggeriresti di essere il modo migliore per sincronizzare ogni partizione /bootse apporti modifiche come l'aggiunta di un nuovo kernel ... ecc?
— CMCDragonkai,

Non devi! Vedi il mio commento su askubuntu.com/questions/660023/… .
— Niclas Börlin,

2

No non è ancora possibile, la maggior parte delle schede madri che hanno UEFI sono in grado di leggere un numero limitato di tipi di partizioni per EFI (es. FAT32) e RAID non è uno di questi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.