- Вопрос или проблема
- Настройка PreLoader
- Использование HashTool
- Советы по скриншотам TUI в ранних стадиях загрузки
- Ответ или решение
- Как использовать PreLoader от Фонда Linux для Secure Boot
- Шаг 1: Подготовка к установке
- 1.1. Подключите и резервное копирование раздела EFI
- Шаг 2: Настройка загрузчика
- 2.1. Подготовьте необходимый загрузчик
- 2.2. Копирование PreLoader и HashTool
- Шаг 3: Использование HashTool для регистрации хеша
- 3.1. Регистрация хеша
- Шаг 4: Завершение установки
- Заключение
Вопрос или проблема
Я прочитал, что существует другой способ использования shim и подписанных бинарных файлов GRUB для Secure Boot, используя PreLoader от Linux Foundation или Систему Secure Boot от Linux Foundation, но как мне это использовать?
перенесено из https://askubuntu.com/a/520351/40581
Комментарий от автора в 2024 году: Смотрите раздел “Советы по скриншотам TUI в ранних стадиях загрузки” ниже, если вас интересует ASCII-арт.
Настройка PreLoader
- Найдите и смонтируйте свой EFI системный раздел и создайте резервную копию его содержимого. Некоторые файлы могут быть специфичны для производителя и не могут быть восстановлены путем переустановки Windows.
- В работающей установке UEFI Ubuntu он смонтирован как
/boot/efi/
и как минимум содержит папку с названиемEFI
. С точки зрения платформы (вашего компьютера) эта папка является\EFI\
во время стадии загрузки. (/media/my_efi_system_partition/EFI
=\EFI\
)
- В работающей установке UEFI Ubuntu он смонтирован как
- Скопируйте или переименуйте тот загрузчик EFI, который хотите использовать, в
\EFI\BOOT\loader.efi
. Некоторые загрузчики, такие как gummiboot, необходимо правильно настроить. - Скопируйте PreLoader.efi в
\EFI\BOOT\bootx64.efi
иHashTool.efi
в ту же директорию.
Вы можете найти более подробные объяснения на сайте Рода Смита.
Использование HashTool
Если вы внимательно следовали инструкциям и у вас включен Secure Boot, при следующей загрузке должны появиться следующие экраны, которые проведут вас через регистрацию хеша неподписанного загрузчика, который в противном случае сломал бы цепочку доверия.
┌──────────────────────────────────────────────────────────────────────────────┐
│ Не удалось запустить загрузчик │
│ │
│ Он должен называться loader.efi (в текущей директории) │
│ Пожалуйста, зарегистрируйте его хеш и попробуйте снова │
│ │
│ Я сейчас запущу HashTool, чтобы вы могли это сделать │
│ │
│ │
│ ┌────┐ │
│ │ OK │ │
│ └────┘ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ Выбрать бинарный файл │
│ │
│ Выбранный бинарный файл будет зарегистрирован │
│ Это означает, что он будет позже загружаться без подтверждения │
│ Не забудьте убедиться, что это подлинный бинарный файл перед регистрацией │
│ │
│ │
│ ┌─────────────────────┐ │
│ │ Зарегистрировать хеш │ │
│ │ Вернуться в меню UEFI │ │
│ │ Перезагрузить систему │ │
│ │ Выйти │ │
│ └─────────────────────┘ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ Выбрать бинарный файл │
│ │
│ Выбранный бинарный файл будет зарегистрирован │
│ Это означает, что он будет позже загружаться без подтверждения │
│ Не забудьте убедиться, что это подлинный бинарный файл перед регистрацией │
│ │
│ │
│ ┌──────────────┐ │
│ │ ../ │ │
│ │ loader.efi │ │
│ │ HashTool.efi │ │
│ │ bootx64.efi │ │
│ └──────────────┘ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────────────────┐
│ Зарегистрировать этот хеш в базе данных MOK? │
│ │
│ Файл: \loader.efi │
│ Хеш: 8D1B74227CB2EE6B23B829595B761BAA34D171337F70D44ABF542D5318BDBA08 │
│ │
│ │
│ │
│ │
│ ┌─────┐ │
│ │ Нет │ │
│ │ Да │ │
│ └─────┘ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└──────────────────────────────────────────────────────────────────────────────┘
Советы по скриншотам TUI в ранних стадиях загрузки
Я написал этот ответ почти десятилетие назад и саморучно создал ASCII-арт, чтобы объяснить и задокументировать части для себя. В наши дни я использую недорогие HDMI-to-USB захватные карты на Linux, чтобы делать скриншоты из TUI в ранних стадиях загрузки и оптимизирую их до всего лишь нескольких КБ или в конечном итоге автоматически конвертирую их (каким-то скучным конвертером, который я еще не нашел, или каким-то модным инструментом ИИ).
Это должен был быть короткий комментарий, но для всех, кто интересуется захватом:
# Установите пакеты.
sudo apt install v4l-utils
# Список доступных устройств.
v4l2-ctl --list-devices
# Воспроизведите поток.
mpv av://v4l2:/dev/video0
# Нажмите "s" для создания скриншотов
# Настройте местоположение и имя файла по мере необходимости.
# В наши дни я настраиваю конвенции и подпапки
# в своей папке с изображениями, чтобы все было организовано.
.
Ответ или решение
Как использовать PreLoader от Фонда Linux для Secure Boot
PreLoader — это компонент, который позволяет обойти необходимость использования таких инструментов, как shim и подписанные бинарные файлы GRUB для Secure Boot. Он предоставляет альтернативный подход, который упрощает управление безопасной загрузкой в системе на базе UEFI. В этом руководстве мы подробно рассмотрим шаги для настройки и использования PreLoader для реализации Secure Boot.
Шаг 1: Подготовка к установке
1.1. Подключите и резервное копирование раздела EFI
Для начала вам необходимо найти и смонтировать ваш раздел UEFI. В большинстве современных дистрибутивов Linux, включая Ubuntu, он обычно монтируется по пути /boot/efi/
и содержит каталог EFI
.
Для обеспечения безопасности ваших данных рекомендуется сделать резервное копирование содержимого этого раздела, так как некоторые файлы могут быть специфическими для вашего оборудования и не могут быть восстановлены просто переустановкой операционной системы.
Пример команды для монтирования EFI:
sudo mount /dev/sdX1 /boot/efi
Замените /dev/sdX1
на соответствующий диск вашего EFI-раздела.
Шаг 2: Настройка загрузчика
2.1. Подготовьте необходимый загрузчик
Выберите нужный загрузчик (например, GRUB или gummiboot) и скопируйте его файл в каталог /EFI/BOOT/
вашего раздела EFI. Этот файл должен называться loader.efi
. Для некоторых загрузчиков, таких как gummiboot, может потребоваться предварительная настройка.
2.2. Копирование PreLoader и HashTool
Теперь необходимо скопировать PreLoader.efi
в каталог /EFI/BOOT/
, переименовав его в bootx64.efi
. Также скопируйте файл HashTool.efi в тот же каталог.
Команды для копирования:
sudo cp /path/to/PreLoader.efi /boot/efi/EFI/BOOT/bootx64.efi
sudo cp /path/to/HashTool.efi /boot/efi/EFI/BOOT/
Шаг 3: Использование HashTool для регистрации хеша
При следующем запуске системы, если Secure Boot включен, вы должны увидеть экран, который сообщает о неудачной попытке запуска загрузчика. На этом экране будет предложено зарегистрировать хеш не подписанного загрузчика.
Пример сообщений на экране:
┌──────────────────────────────────────────────────────────────────────────────┐
│ Failed to start loader │
│ │
│ It should be called loader.efi (in the current directory) │
│ Please enrol its hash and try again │
└──────────────────────────────────────────────────────────────────────────────┘
3.1. Регистрация хеша
Следуйте инструкциям на экране для запуска HashTool и регистрации хеша файла loader.efi
. HashTool предложит вам выбрать бинарный файл и зарегистрировать его хеш, чтобы вы могли загружаться без дополнительных вопросов в будущем.
- Выберите
loader.efi
в меню, а затем подтвердите, что хотите зарегистрировать его хеш.
┌──────────────────────────────────────────────────────────────────────────────┐
│ Enroll this hash into MOK database? │
└──────────────────────────────────────────────────────────────────────────────┘
Шаг 4: Завершение установки
После завершения регистрации хеша вы сможете перезагрузить систему. При следующей загрузке ваш загрузчик должен загружаться без дополнительных действий, сохраняя все преимущества Secure Boot.
Заключение
Использование PreLoader от Фонда Linux — это эффективный способ реализации Secure Boot без традиционных методов. Этот процесс может показаться сложным, однако следуя пошаговым инструкциям, вы сможете успешно настроить вашу систему.
Если вам нужна дополнительная информация или возникнут сложности, не стесняйтесь обращаться за помощью на специализированные форумы или сообщества.