Вопрос или проблема
Мне было бы интересно узнать, есть ли разница между файлами bootmgr.efi
и bootmgfw.efi
? Эти файлы находятся в разделе ESP в EFI/Microsoft/Boot
.
С этого ссылки
bootmgr – менеджер загрузки Windows на системах с BIOS. Этот файл будет загружен как часть процесса загрузки BIOS – обычно загрузочное устройство устанавливается в BIOS. Предполагая, что загрузочное устройство – это устройство типа жесткого диска, затем загружается основной загрузочный сектор (MBR) > активный раздел определяется в таблице разделов > загрузочный сектор раздела (PBR) на активном разделе загружается > код в PBR загружает bootmgr > bootmgr загружает файл BCD.
bootmgfw.efi – менеджер загрузки Windows на системах с UEFI. Этот файл загружается напрямую из записи менеджера загрузки Windows в меню загрузки прошивки, хранящемся в NVRAM. Типичный процесс загрузки – менеджер загрузки прошивки > \EFI\Microsoft\boot\bootmgfw.efi загружается через запись менеджера загрузки Windows > bootmgfw.efi загружает файл BCD (путь к файлу BCD – \EFI\Microsoft\boot\BCD).
Так что… Как вы, вероятно, можете догадаться, запустив bcdedit
(в Windows) или efibootmgr
(в Linux), bootmgfw.efi это загрузчик Windows UEFI, который затем загрузит winload.efi и, таким образом, остальную часть ОС.
Резервный исполняемый файл в \EFI\Boot\bootx64.efi также является копией этого.
Но на самом деле, кажется, почти нет информации о bootmgr.efi. После того как мне указали на его единственное упоминание на MSDN, я узнал, что после его переименования параметры расширенного запуска W8 перестают работать (хотя система все еще может нормально загружаться).
И в завершение, это подозрение было подтверждено взломом, который вскользь упоминал, как действительно он будет загружен базовым загрузчиком при необходимости установки Windows или восстановления и подготовки среды.
Также объясняя, почему он на корне установочного DVD-носителя (хотя я все еще не уверен, как вы могли бы вызвать это позже в Vista и 7)
Я пытался понять процесс загрузки Windows, используя QEMU. Я переименовал Bootmgr.efi и Bootmgfw.efi в Bootx64.efi и сохранил в папке \EFI\Boot (папка, из которой прошивка EFI загружает загрузчик ОС Bootx64.efi). Кажется, Bootmgr.efi требует подписи, Bootmgfw.efi не требует. Winload.* (EXE или EFI) проверяет Bootmgr и регистрирует ту же информацию в нем во время загрузки. Мне кажется, что Bootmgr.efi нуждается в подписи в прошивке и ОС. Bootmgfw работает как “открытый” EFI загрузчик для Windows. Каждый раз, когда я загружал Bootmgfw.efi, он успешно искал \EFI\Microsoft\boot\BCD.
Bootmgr.efi используется в процессе загрузки с DVD. Вы записываете efisys.bin в загрузочный сектор DVD, после этого при загрузке он ищет bootmgr.efi в корне вашего DVD.
Bootmgfw.efi используется в других типах загрузки UEFI, включая PXE.
Ответ или решение
Разница между bootmgr.efi и bootmgfw.efi
Вопрос о различиях между файлами bootmgr.efi
и bootmgfw.efi
часто возникает у специалистов в области информационных технологий при работе с системой загрузки Windows в средах BIOS и UEFI. Оба файла находятся в разделе EFI (EFI System Partition) по пути EFI/Microsoft/Boot
, однако они предназначены для разных типов загрузки операционной системы.
1. Основные характеристики
-
bootmgr.efi:
- Этот файл представляет собой менеджер загрузки Windows для систем с BIOS-подобным интерфейсом, который также используется в специфических процессах, таких как загрузка с DVD-дисков.
- При загрузке система сначала считывает загрузочный сектор, идентифицирует активный раздел и передает управление
bootmgr.efi
, который затем загружает файл BCD (Boot Configuration Data) для дальнейшей инициализации операционной системы. bootmgr.efi
особенно важен для инструментов восстановления Windows, таких как Windows Recovery Environment (WinRE), позволяя системе запуститься в специальных режимах, включая восстановление и установку.
-
bootmgfw.efi:
- Это менеджер загрузки Windows для систем с UEFI или Unified Extensible Firmware Interface. Он загружается непосредственно из меню загрузки UEFI и является основным входом для загрузки Windows.
- При включении компьютера UEFI-фирменный загрузчик напрямую вызывает
bootmgfw.efi
, который затем обращается к файлу BCD для дальнейшей загрузки операционной системы черезwinload.efi
. bootmgfw.efi
не требует цифровой подписи во время загрузки, что также делает его более «открытым» загрузчиком для Windows, в отличие отbootmgr.efi
, который может потребовать подписи как от прошивки, так и от операционной системы.
2. Использование в процессе загрузки
-
DVD-загрузка:
- За загрузку с DVD отвечает именно
bootmgr.efi
, который ищется в корневом каталоге загрузочного DVD. Этот файл необходим для успешного запуска процесса установки или восстановления системы.
- За загрузку с DVD отвечает именно
-
Другие варианты загрузки:
bootmgfw.efi
используется в других сценариях загрузки, например, при загрузке через PXE (Preboot Execution Environment). Он часто применяется в серверных средах и встраиваемых системах.
3. Поддерживаемая среда
bootmgr.efi
может работать в комбинации с другими компонентами BIOS и требует строгой проверки на наличие необходимой подписи для выполнения.- Напротив,
bootmgfw.efi
более гибок, что делает его идеальным выбором для современных систем, работающих на UEFI.
Заключение
В заключение, bootmgr.efi
и bootmgfw.efi
выполняют важные, но различные функции в процессе загрузки Windows. bootmgr.efi
играет ключевую роль в системах с BIOS и предустановленных режимах восстановления, в то время как bootmgfw.efi
предназначен для прямой загрузки через UEFI, представляя собой современное решение для запуска и управления операционной системой Windows. Понимание этих различий важно для администраторов систем и специалистов по ИТ, занимающихся настройкой и поддержкой компьютерных систем.