Может ли системный раздел EFI быть RAID-массивом?

Я устанавливаю HTPC с 64-битной Ubuntu, используя UEFI и RAID с GPT-дисками.

Возможно ли, чтобы системный раздел EFI (тип раздела 0xEF00) был частью массива RAID1 с помощью mdadm? Я надеюсь, что метаданные версии 1.0 (в конце диска) позволят это.

Кроме того, что также должно быть установлено «устройство для установки загрузчика», или это относится только к MBR-дискам?

10
задан 15 October 2011 в 09:33

5 ответов

После долгих экспериментов я думаю, что это ответ:

Системный раздел EFI (обычно смонтированный на /boot/efi/) не содержит много файлов, если, например, GRUB хранится прямо там, а не /boot/grub/. Содержимое обычно не меняется, поэтому нет необходимости в RAID-разделе. Наличие нескольких копий раздела на разных дисках также потребует установки загрузочных записей UEFI с помощью efibootmgr; обычно GRUB инициализирует это на основе смонтированного раздела /boot/efi/.

Таким образом, кажется, что это и не нужно, и нелегко сделать.

0
ответ дан 15 October 2011 в 09:33
1111 Как вы говорите, метаданные mdadm ver. 1.0 делает работу.

Мне удалось получить рабочую конфигурацию, которую Eig Gigabyte GA-C1037UN-EU смог загрузить. Эта конфигурация ограничена RAID1 для раздела ESP, но позволяет использовать любую конфигурацию RAID для остальных разделов. Давайте покажем RAID1 на двух дисках в качестве примера. Каждый диск разбивается следующим образом:

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

Первый RAID-массив, созданный на разделах sdX1 на каждом диске и используемый для раздела ESP. Остальную емкость дисков можно использовать любым способом, например, в RAID1. Пусть первый RAID будет /dev/md/efi, а второй /dev/md/data. /dev/md/efi не следует использовать метки разделения, такие как MBR или GPT. /dev/md/data можно разделить позже или использовать как LVM pv. Например:

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

Метаданные вер. 1.0 имеет одну простую особенность: ее суперблок хранится в конце раздела RAID, поэтому BIOS может обнаружить простой раздел FAT32 с флагами ESP и BOOT. Так что ничто не мешает BIOS искать EFI / BOOT / BOOTX64.EFI на этом разделе и загружаться с него.

Основным ограничением этого метода является то, что GRUB должен быть настроен для установки загрузочного файла EFI в пути для съемных носителей, поскольку efibootmgr пытается загрузить BIOS непосредственно с устройства md, а не sdX. Это можно сделать, используя grub-install с флагом --removable.

UPD. Есть проблемы с совместимостью. Пробовал ту же конфигурацию на материнской плате ASUS P8Z68-V PRO / GEN3. Система не загружается, независимо от того, что я делаю.

0
ответ дан 15 October 2011 в 09:33

Я думаю, что короткий ответ таков: нет, системные разделы EFI (ESP) не могут быть RAID-ed. Однако вы все равно можете получить преимущества, подобные RAID, если клонируете ESP между вашими дисками RAID и добавляете оба раздела в цепочку загрузки EFI. Подробнее см. Как установить 64-битную Ubuntu 14.04 с разделом RAID 1 с двойной загрузкой в ​​системе UEFI / GPT? .

0
ответ дан 15 October 2011 в 09:33

Нет, это пока невозможно, большинство материнских плат с UEFI могут считывать ограниченное количество типов разделов для EFI (например, FAT32), и RAID не является одним из них.

0
ответ дан 15 October 2011 в 09:33

Технически, да, ESP можно зеркально отразить, поместив суперблок RAID в конец (что происходит, если вы создаете суперблок формата Linux RAID-1 версии 1.0).

В такой конфигурации ESP с рейдом неотличим от ESP без рейда микропрограммой UEFI.

Однако этот режим не поддерживается Ubuntu, и ни один из инструментов Ubuntu не работает с такой настройкой. (В отличие, например, от Fedora.)


Тем не менее, наличие избыточных и синхронизированных ESP по-прежнему важно, даже если их содержимое не меняется часто. Обновления пакетов, которые записываются в ESP, действительно происходят, самое позднее при следующем dist-upgrade. Кроме того, если один диск выходит из строя, вам нужен резервный ESP, чтобы по-прежнему иметь возможность загружаться с другой части вашей корневой файловой системы, то есть когда она была создана на RAID-1. И тогда он должен содержать текущее программное обеспечение, совместимое с остальной частью системы Ubuntu.


К счастью, в настоящее время Ubuntu поддерживает избыточные ESP другими способами. Это означает, что их пакет grub можно перенастроить так, чтобы он всегда обновлял второй ESP, всякий раз, когда система записывает в ESP:

0
ответ дан 14 December 2020 в 17:30

Другие вопросы по тегам:

Похожие вопросы: