EFI system partition (Русский)
Системный раздел EFI (также называемый ESP или EFISYS) представляет собой физический раздел в формате FAT32 (в основной таблице разделов диска, а не под LVM или программным RAID и т.д.), откуда прошивка UEFI запускает загрузчик и приложение UEFI.
Это независимый от ОС раздел, который служит местом хранения загрузочных устройств EFI и приложений, которые будут запускаться с помощью прошивки EFI. Это необходимо для загрузки UEFI.
Создание раздела
В следующих двух разделах показано, как создать системный раздел EFI (ESP).
Рекомендуется сохранять размер ESP на 512 Мбайт, хотя меньшие/большие размеры тоже приветствуются. [1]
Согласно примечанию Microsoft[2], минимальный размер для системного раздела EFI (ESP) будет составлять 100 МБ, хотя это не указано в спецификации UEFI. Обратите внимание, что для дисков расширенный формат 4K Native drives (4 КБ на сектор) размер составляет не менее 256 Мбайт, поскольку это минимальный размер раздела дисков FAT32 (рассчитанный как размер сектора (4 КБ) x 65527 = 256 Мбайт), из-за ограничений файловой системы FAT32.
Разметка дисков GPT
Выберите один из следующих способов создания ESP для диска GPT с разделами:
-
fdisk/gdisk: Создайте раздел с типом раздела EFI System (
EFI System
в fdisk илиEF00
в gdisk). Перейдите к разделу #Форматирование раздела ниже. -
GNU Parted: Создайте раздел FAT32 и в Parted установите/активируйте флаг
boot
(не флагlegacy_boot
) на этом разделе. Перейдите к разделу #Монтирование раздела ниже.
Разметка дисков MBR
Создайте раздел с типом раздела EFI System, используя fdisk. Перейдите к #Форматирование раздела.
Форматирование раздела
После создания ESP вы должны форматировать его как FAT32:
# mkfs.fat -F32 /dev/sdxY
Если вы использовали GNU Parted выше, тогда раздел уже должен быть отформатирован.
Если вы получили сообщение WARNING: Not enough clusters for a 32 bit FAT!
, уменьшите размер кластера с помощью команды mkfs.fat -s2 -F32 ...
или -s1
; иначе раздел может быть нечитаемым UEFI.
Монтирование раздела
В случае EFISTUB файлы ядра и initramfs должны храниться в системном разделе EFI. Для простоты вы также можете использовать ESP в качестве самого раздела /boot
вместо отдельного раздела /boot
для загрузки EFISTUB. Другими словами, после создания и форматирования системного раздела EFI, как указано выше, просто смонтируйте на /boot
.
Также смотрите #Использование bind монтирования.
Известные вопросы
ESP на RAID
Можно сделать часть ESP массива RAID1, но при этом возникает риск повреждения данных, и при создании ESP необходимо учитывать дополнительные соображения. Для получения допольнительной информации смотрите [3] и [4].
Советы и хитрости
Использование bind монтирования
Вместо того, чтобы устанавливать ESP на /boot
, вы можете подключить каталог ESP к /boot
с помощью bind монтирования (смотрите mount(8)). Это позволяет pacman обновлять ядро напрямую, сохраняя при этом организацию ESP по своему вкусу.
- Для этого требуется, чтобы ядро и загрузчик были совместимы с FAT32. Это не является проблемой для обычной установки Arch, но может быть проблематичным для других дистрибутивов (а именно тех, которые требуют символических ссылок в
/boot
). Смотрите сообщение на форуме здесь. - Для загрузки с помощью этого способа вы должны использовать параметр ядра
root=
.
Как и в EFISTUB#Альтернативные точки монтирования для ESP[ссылка недействительна: раздел не найден], скопируйте все загрузочные файлы в каталог вашего ESP, но смонтируйте ESP вне /boot
(например, /esp
). Затем привяжите смонтированный раздел к каталогу:
# mount --bind /esp/EFI/arch/ /boot
После проверки успеха отредактируйте свой Fstab, чтобы изменения были постоянными:
/etc/fstab
/esp/EFI/arch /boot none defaults,bind 0 0