Вопрос или проблема
Я пытаюсь создать загрузочную 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:
-
Сначала установите Syslinux на ваш USB-накопитель. Вы можете сделать это с помощью
apt
:sudo apt install syslinux
-
Создайте файловую структуру:
mkdir /media/usb sudo mount /dev/sdX1 /media/usb
-
Установите 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:
- Загрузите rEFInd с официального сайта (http://www.rodsbooks.com/refind/).
- Разархивируйте и скопируйте его файлы на флешку.
- Создайте файл конфигурации
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 обеспечит вам гибкость и безопасность. Постоянное следование документации и тестирование каждого этапа сыграет ключевую роль в достижении успешного результата.