Решение для повторного поиска невозможности загрузки с помощью shim при включенной безопасной загрузке

linux #shim #refind

#linux #shim #повторная проверка

Вопрос:

Предыстория

Ubuntu 21.10 может загружаться на моем компьютере через безопасную загрузку, а версия shim — 15.4. Затем обратитесь к официальному руководству, я установил rEFInd v0.13.2 (последняя версия на момент публикации этого блога) через PPA в Ubuntu 21.10. Однако, когда я перезагружаю систему и загружаю rEFInd, он всегда завершается ошибкой с сообщением Verification failed:(0x1A)Security Violation . Я уверен, что оба refind_local.cer и refind.cer под EFI/refind/keys/ были зарегистрированы через MokManager (хотя refind_local.cer требуется только через установку PPA).

Ответ №1:

Причина

Из этого сообщения я понял, что в настоящее время в rEFInd (версия 0.13.2) отсутствует .sbat раздел. Для shim 15.3 и более поздних версий SBAT является обязательным, что приводит к невозможности запуска повторного поиска.

В сообщении также указывается, что автор rEFInd в настоящее время изучает, как решить связанные с этим проблемы. Я надеюсь, что более поздние версии смогут устранить эту проблему.

Решение

В заключение, вам необходимо использовать shim 15 для решения этой проблемы. Для этого вы можете выполнить следующие шаги (применимо к amd64. Шаги также аналогичны, если вы используете другие архитектуры):

  1. Получите MokManager и файл efi shim, подписанный Microsoft, с панели запуска Ubuntu. Для достижения этой цели загрузите shim_15 1552672080.a4a1fbe-0ubuntu2_amd64.deb и shim-signed_1.45 15 1552672080- 064ubuntub_bed64.деб.
  2. Распакуйте загруженный файл shim_15 1552672080.a4a1fbe-0ubuntu2_amd64.deb и извлеките mmx64.efi файл. ( data.tar.xz -> . -> usr/lib/shim/mmx64.efi )
  3. Распакуйте загрузочную прокладку-signed_1.45 15 1552672080 .a4a1fbe-0ubuntu2_amd64.deb, выньте shimx64.efi.dualsigned файл. ( data.tar.xz -> . -> usr/lib/shim/shimx64.efi.dualsigned ) Переименуйте его в shimx64.efi .
  4. Перейдите к загрузке refind-bin-0.13.2.zip . Затем создайте новую папку и поместите два файла, извлеченных вместе с загруженным zip-файлом, в новую папку.
  5. Откройте терминал в вышеупомянутой папке, затем выполните следующие команды:
 unzip refind-bin-0.13.2.zip
cd refind-bin-0.13.2
sudo ./refind-install --shim ../shimx64.efi
 

Если вы столкнулись с каким-либо подтверждением в процессе установки, просто введите y для подтверждения.

  1. После перезагрузки, если появится запрос Verification failed , обратитесь к шагу 9 официального руководства. Выберите Enroll key from disk , а затем выберите ESP-диск, на котором вы установили rEFInd. Наконец, выберите файл пути EFI/refind/keys/refind.cer для импорта.
  2. Если вы используете на своем компьютере систему Linux, отличную от Ubuntu, вы можете продолжить импортировать файлы cer, соответствующие вашим дистрибутивам, EFI/refind/keys как указано выше. Невыполнение этого требования может привести к тому, что ваш дистрибутив Linux не сможет загрузиться через rEFInd.