Вопрос или проблема
Обновление прошивки через fwupdmgr
приводит к следующей ошибке:
$ fwupdmgr update
Устройства без доступных обновлений прошивки:
• USB2.0 Hub
• USB2.0 Hub
• USB3.1 Hub
• USB3.1 Hub
• Integrated Camera
• SSD 970 EVO Plus 1TB
• UEFI Device Firmware
• UEFI Device Firmware
• UEFI Device Firmware
• UEFI Device Firmware
• UEFI Device Firmware
Устройства с последней доступной версией прошивки:
• Prometheus
• Prometheus IOTA Config
• System Firmware
╔══════════════════════════════════════════════════════════════════════════════╗
║ Обновить UEFI dbx с 77 до 217? ║
╠══════════════════════════════════════════════════════════════════════════════╣
║ Это обновление dbx до последнего релиза от Microsoft, которое добавляет ║
║ небезопасные версии grub и shim в список запрещённых подписей из-за ║
║ обнаруженных обновлений безопасности. ║
║ ║
║ Перед установкой обновления, fwupd проверит наличие затронутых ║
║ исполняемых файлов в ESP и откажется обновляться, если найдёт любые ║
║ загрузочные бинарники, подписанные любой из запрещённых подписей. Если ║
║ установка не удастся, вам потребуется обновить пакеты shim и grub, ║
║ прежде чем обновление будет применено. ║
║ ║
║ После установки этого обновления dbx, любые DVD или USB образы установщиков,║
║ подписанные старыми подписями, могут работать некорректно. Возможно, вам ║
║ придётся временно отключить secure boot при использовании ║
║ восстановительных или установочных носителей, если вашей ║
║ дистрибуцией не были предоставлены новые образы. ║
║ ║
╚══════════════════════════════════════════════════════════════════════════════╝
Выполнить операцию? [Y|n]:
Загрузка… [***************************************]
Загрузка… [***************************************]
Распаковка… [***************************************]
Аутентификация… [***************************************]
Ожидание… [***************************************]
Запись… [***************************************]
Распаковка… [ ]
Заблокирован исполняемый файл в ESP, убедитесь, что grub и shim обновлены: /boot/efi/EFI/BOOT/BOOTX64.EFI Контрольная сумма Authenticode [af79b14064601bc0987d4747af1e914a228c05d622ceda03b7a4f67014fee868] присутствует в dbx
Что делать дальше? Я предполагаю, нужно заменить /boot/efi/EFI/BOOT/BOOTX64.EFI
. Стоит ли его взять из последнего установочного образа Debian? Это единственный файл, который нужно заменить? Какова вероятность повредить систему?
$ uname -a
Linux p14s 6.1.0-1-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.4-1 (2023-01-07) x86_64 GNU/Linux
$ sudo tree /boot/efi/
/boot/efi/
└── EFI
├── BOOT
│ ├── BOOTX64.EFI
│ ├── fbx64.efi
│ └── grubx64.efi
└── debian
├── BOOTX64.CSV
├── fbx64.efi
├── fw
│ └── fwupd-01453b71-da0c-4832-9f4f-e378245339c7.cap
├── fwupdx64.efi
├── grub.cfg
├── grubx64.efi
├── mmx64.efi
└── shimx64.efi
Редактировать:
$ sudo efibootmgr -v | grep "Boot$(sudo efibootmgr -v | awk '/BootCurrent/{print $2}')"
Boot0000* debian HD(1,GPT,488c1b76-c8f0-4e08-a48d-d4a0a3a4fa81,0x800,0x106000)/File(\EFI\debian\shimx64.efi)
Обратите внимание на File(\EFI\debian\shimx64.efi)
— означает ли это, что файл /boot/efi/EFI/BOOT/BOOTX64.EFI, на который ругается fwupdmgr, вообще не используется?
Это лучшая помощь, которую я нашёл:
Ответ или решение
Ошибка, которую вы видите при попытке обновления прошивки с помощью fwupdmgr
, указывает на наличие заблокированного исполняемого файла в разделе EFI System Partition (ESP). Это связано с тем, что текущая версия базы данных UEFI dbx не допускает ряд старых и небезопасных версий GRUB и Shim. Эти файлы имеют подписи, которые были добавлены в список запрещённых из-за обнаруженных уязвимостей.
Что это значит?
Ваше текущее окружение UEFI использует shimx64.efi
в качестве загрузчика, как следует из вывода efibootmgr -v
. Это файл, который вы указываете как используемый загрузчик, располагается в каталоге /EFI/debian/
, и он вероятно не вызывается напрямую из ESP в пути /boot/efi/EFI/BOOT/BOOTX64.EFI
, на который ссылается ошибка fwupdmgr
.
Как исправить?
Чтобы устранить ошибку и позволить обновлению прошивки продолжиться без блокировки:
-
Обновите пакеты shim и grub:
Вам необходимо убедиться, что у вас установлены последние версии этих пакетов из репозиториев Debian. Используйте apt для обновления:sudo apt update sudo apt upgrade shim grub-efi-amd64
-
Проверьте целостность системы:
Убедитесь, что все важные компоненты вашей системы EFI обновлены. Если вы обнаружили, что обновления не применяются или недоступны, ручная замена может оказаться необходимой, но это крайняя мера. -
Подготовьте резервную копию:
Всегда рекомендуется иметь резервную копию всех важных данных перед работой с критическими компонентами системы, такими как UEFI и загрузчики. -
Проверьте, используется ли
BOOTX64.EFI
:
Поскольку вы выяснили, что ваш текущий загрузчик — этоshimx64.efi
, вам действительно может потребоваться только обновление этого файла. На основании ваших выводов, еслиBOOTX64.EFI
не используется для загрузки, дальнейшие действия с ним не требуются.
5.Отключение Secure Boot:
Если по-прежнему возникают проблемы, и если ваша система это позволяет, вы можете временно отключить Secure Boot в параметрах UEFI/BIOS, чтобы пропустить проверку подписи во время тестирования новых настроек.
Вероятность возникновения проблем
Когда выполняются подобные операции, всегда есть небольшой риск нарушения работы системы, особенно если изменения производятся вручную и без предварительной проверки. Тем не менее, если всё выполнить правильно, риск "загрузочного кирпича" минимален. Убедитесь, что у вас есть доступ к средствам восстановления или установочным носителям для вашего дистрибутива Debian на случай, если что-то пойдёт не так.
Поддерживая вашу систему в актуальном состоянии и следуя этим шагам, вы минимизируете риск и обеспечиваете безопасность вашей системы.