Ubuntu 24.04 на USB + FDE + UEFI + SecureBoot без UEFI-записи или без GRUB

Вопрос или проблема

Я пытаюсь создать загрузочную USB-флешку с Ubuntu 24.04 с полным шифрованием диска (FDE) без необходимости использования UEFI-записи. Цель состоит в том, чтобы выбрать USB-накопитель напрямую из меню загрузки, а не использовать запись UEFI. Однако я сталкиваюсь с проблемой, когда Grub или Shim постоянно пытаются установить запись EFI в прошивку UEFI, что перезаписывает мою существующую установку Ubuntu на диске NVMe. Похоже, это связано с жестко закодированным путем /boot/efi/EFI/ubuntu в Grub или Shim.

Я пытался установить Grub с другим идентификатором загрузчика, но это не сработало из-за жестко закодированного пути.

Похоже, что Ubuntu 24.04 сильно зависит от Shim, и мне не удалось запустить его с использованием grub-efi-amd64-signed и подписанных ядер.

Я также пробовал systemd-boot, который должен уже быть подписан и способен загружать подписанные ядра, но я столкнулся с проблемой необходимости подписывать systemd-boot самостоятельно, а ключи подписи хранятся локально, что усложняет процесс.

В отличие от этого, такие инструменты, как mkusb или Rufus, могут загружать LiveCD с включенным Secure Boot без необходимости использования UEFI-записи, хотя я не уверен, как они это делают. В идеале я хотел бы решение, аналогичное тому, что делают эти инструменты.

Любая помощь будет очень полезна.

С уважением

Ответ или решение

Создание загрузочной флешки с Ubuntu 24.04, использующей полное шифрование диска (Full Disk Encryption, FDE), с поддержкой UEFI и Secure Boot, без необходимости загрузочного пункта UEFI и без использования GRUB, представляет собой довольно сложную задачу. Однако, существуют подходы, которые могут помочь вам достичь этой цели.

1. Понимание проблемы

При установке Ubuntu на USB-накопитель происходит автоматическая попытка создания UEFI-загрузочной записи, которая может перезаписывать существующие установки. Grub и Shim, как правило, пытаются использовать хардкодированный путь /boot/efi/EFI/ubuntu, что может вызывать конфликт с вашей главной установкой. Главное задание — создать загрузочный USB, который позволяет запускать систему напрямую через меню загрузки без создания UEFI-записи.

2. Подходы к решению

2.1. Использование Syslinux

Одним из самых простых решений может стать использование загрузчика Syslinux вместо GRUB. Syslinux поддерживает UEFI и может быть использован для загрузки Ubuntu с USB-накопителя без необходимости создания новых UEFI-записей.

  • Установка Syslinux:

    1. Сначала установите Syslinux на ваш USB-накопитель. Вы можете сделать это с помощью apt:

      sudo apt install syslinux
    2. Создайте файловую структуру:

      mkdir /media/usb
      sudo mount /dev/sdX1 /media/usb
    3. Установите Syslinux на USB-накопитель:

      sudo syslinux --install /dev/sdX1
  • Настройка конфигурации:
    Вы можете создать файл syslinux.cfg в корне вашего USB:

    LABEL ubuntu
      MENU LABEL Ubuntu 24.04
      LINUX /casper/vmlinuz
      INITRD /casper/initrd
      APPEND boot=casper quiet splash

2.2. Использование альтернативных загрузчиков

Поскольку проблема с Shim заключается в необходимости наличия UEFI-записей, можно рассмотреть возможность использования более легковесного загрузчика, такого как rEFInd. Этот загрузчик имеет более гибкие настройки и может быть настроен для работы без создания UEFI-записей.

  • Установка rEFInd:
    1. Загрузите rEFInd с официального сайта (http://www.rodsbooks.com/refind/).
    2. Разархивируйте и скопируйте его файлы на флешку.
    3. Создайте файл конфигурации refind.conf, чтобы указать путь к ядру и initrd.

3. Шифрование диска

Для настройки полного шифрования диска рекомендуется использовать LUKS (Linux Unified Key Setup). Это обеспечит безопасность ваших данных на USB-накопителе.

  • Для шифрования:

    sudo cryptsetup luksFormat /dev/sdX1
    sudo cryptsetup luksOpen /dev/sdX1 cryptusb
  • Форматирование и установка файловой системы:

    sudo mkfs.ext4 /dev/mapper/cryptusb

4. Окончательные шаги

После установки загрузчика и шифрования, не забудьте протестировать USB-накопитель на совместимость с UEFI и Secure Boot. Не используйте автоматическую установку GRUB и держите флешку как LiveUSB. Как только все настройки завершены, перезагрузите компьютер и выберите USB-накопитель из меню загрузки.

Заключение

Создание загрузочной флешки с Ubuntu 24.04 с поддержкой FDE, UEFI и Secure Boot без UEFI-записи — задача сложная, но выполнимая. Использование альтернативных загрузчиков, таких как Syslinux или rEFInd, в сочетании с шифрованием LUKS обеспечит вам гибкость и безопасность. Постоянное следование документации и тестирование каждого этапа сыграет ключевую роль в достижении успешного результата.

Оцените материал
Добавить комментарий

Капча загружается...