Релиз загрузочного менеджераGNU GRUB 2.06

После двух лет разработки представлен стабильный релиз модульного многоплатформенного менеджера загрузки GNU GRUB 2.06 (GRand Unified Bootloader). GRUB поддерживает широкий спектр платформ, включая обычные ПК с BIOS, платформы IEEE-1275 (оборудование на базе PowerPC/Sparc64), EFI-системы, RISC-V, оборудование на основе MIPS-совместимого процессора Loongson 2E, системы Itanium, ARM, ARM64 и ARCS (SGI), устройства, использующие свободный пакет CoreBoot.

Основные новшества:

  • Добавлена поддержка механизма SBAT (UEFI Secure Boot Advanced Targeting), решающего проблемы с отзывом сертификатов, которыми заверены загрузчики для UEFI Secure Boot. SBAT подразумевает добавление новых метаданных, которые заверяются цифровой подписью и могут дополнительно включаться в списки разрешённых или запрещённых компонентов для UEFI Secure Boot. Указанные метаданные позволяют при отзыве манипулировать номерами версий компонентов без необходимости перегенерации ключей для Secure Boot и без формирования новых подписей.
  • Добавлена поддержка формата шифрования дисков LUKS2, который отличается от LUKS1 упрощённой системой управления ключами, возможностью использования секторов большого размера (4096 вместо 512, снижает нагрузку при расшифровке), применением символьных идентификаторов разделов и средствами резервирования метаданных с возможностью их автоматического восстановления из копии в случае выявления повреждения.
  • Прекращена поддержка коротких MBR gap (область между MBR и началом дискогового раздела, в GRUB используется для хранения части загрузчика, не умещающейся в сектор MBR).
  • Добавлена поддержка модулей XSM (Xen Security Modules), позволяющих определять дополнительные ограничения и полномочия для гипервизора Xen, виртуальных машин и связанных с ними ресурсов.
  • Реализован механизм lockdown, похожий на аналогичный набор ограничений в ядре Linux. Lockdown блокирует возможные пути обхода UEFI Secure Boot, например, запрещает доступ к некоторым интерфейсам ACPI и MSR-регистрам CPU, ограничивает использование DMA для PCI-устройств, блокирует импорт кода ACPI из переменных EFI, не допускаются манипуляции с портами ввода/вывода.
  • По умолчанию отключена утилита os-prober, находящая загрузочные разделы других ОС и добавляющая их в загрузочное меню.
  • Бэкпортированы патчи, подготовленные различными дистрибутивами Linux.
  • Устранены уязвимости BootHole и BootHole2.
  • Реализована возможность сборки с использованием GCC 10 и Clang 10.
Release. Ссылка here.