[Цитировать]

    vovan1982
  • 214
  • Стаж: 11 лет
  • Сообщений: 1195
  • Репутация:84

    [+] [-]
  • Откуда: Ростов-на-Дону
EFILoaderEFILoader — это EFI приложение Windows, которое запускается диспетчером загрузки Windows, а затем восстанавливает контекст выполнения встроенного ПО UEFI, чтобы можно было вызывать обычные службы UEFI и/или запускать другое приложение EFI.
Как это работает:
EFI приложения Windows загружаются после того, как диспетчер загрузки переключился на собственный контекст приложения. В этом контексте прямые вызовы служб встроенного ПО, таких как ST, BS или консольные протоколы, могут частично работать или зависать. EFILoader считывает дескриптор прошивки из BOOT_APPLICATION_PARAMETER_BLOCK, готовит прошивку-вызываемый контекст, проверяет вывод на экран через ConOut->OutputString, а затем запускает целевое приложение EFI.
Параметры BCD:
Запись загрузочного приложения должна указывать на \efiloader.efi
GUID записи BCD и путь к efiloader.efi можно настроить. Проверка целостности должна быть отключена для записи загрузочного приложения:
set guid={14530529-1111-2222-abcd-12345678abcd}
bcdedit /create %guid% /d "EFI LOADER" /application bootapp
bcdedit /set %guid% device boot
bcdedit /set %guid% path \efiloader.efi
bcdedit /set %guid% nointegritychecks true
bcdedit /set {bootmgr} displayorder %guid% /addlast
Если вы редактируете автономное хранилище BCD, добавьте тот же аргумент /store к командам bcdedit, соответствующим вашей среде.
EFILoader также поддерживает переопределение запущенного приложения EFI с помощью строкового элемента BCD loadoptions (0x12000030):
bcdedit %bcd% /set %guid% loadoptions \EFI\okr.efi
Опция копируется перед переключением в контекст прошивки. Ведущие/конечные пробелы, символы NUL и пара кавычек игнорируются.
Если параметр loadoptions отсутствует или недействителен, резервной целью является:
\shell.efi

Загрузка с ISO
При загрузке с оптического носителя файл efiloader.efi необходимо поместить в файловую систему ISO. Приложение EFI, запускаемое efiloader, например Shell.efi, должно быть размещено внутри образа UEFI El Torito.
Пример:
[ISO]\bootmgr.efi
[ISO]\efiloader.efi
[ISO]\boot\boot.sdi
[ISO]\EFI\microsoft\boot\bcd
[IMG]\shell.efi
[IMG]\EFI\BOOT\BOOTX64.EFI

Скачать


Последний раз редактировалось: vovan1982 (Вчера, в 15:21), всего редактировалось 1 раз

[Цитировать]

    Felix
  • 39570
  • Стаж: 1 год 1 месяц
  • Сообщений: 70
  • Репутация:0

    [+] [-]
Я бы для полноты картины добавил еще информацию по созданию ISO Boot, там есть нюансы в частности структуры.

[Цитировать]

    xnik
  • 19473
  • Стаж: 7 лет 7 месяцев
  • Сообщений: 556
  • Репутация:12

    [+] [-]
  • Откуда: СССР
А где должен быть bootmgr.efi, в корне диска?
И за что отвечает?
shell.efi тоже в корне диска?

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 9 лет 4 месяца
  • Сообщений: 4241
  • Репутация:127

    [+] [-]
107180А где должен быть bootmgr.efi, в корне диска?
И за что отвечает?
НЯП, это для ИСО. Его запускает ИСО-шный загрузчик, а он перекидывает на \efi\microsoft\boot\bootmgfw.efi
107180shell.efi тоже в корне диска?
Как я понял, да.
Если параметр loadoptions отсутствует или недействителен, резервной целью является shell.efi

-По нормальному, надо прописывать loadoptions с путём к нормальному ГРУБ2 (ну, или так недавно остромодному rEFInd).

[Цитировать]

    xnik
  • 19473
  • Стаж: 7 лет 7 месяцев
  • Сообщений: 556
  • Репутация:12

    [+] [-]
  • Откуда: СССР
Подскажите как добавить, в BCD флешки, батник не создает запись
А через редактор не дает редактировать guid

[Цитировать]

    vovan1982
  • 214
  • Стаж: 11 лет
  • Сообщений: 1195
  • Репутация:84

    [+] [-]
  • Откуда: Ростов-на-Дону
xnik, да, можно и вручную. Через BootIce.exe откройте BCD в профессиональном режиме и создайте новый элемент RealMode. Далее отредактируйте параметры как на сриншоте в шапке.
PS: efiloade.efi может располагаться где угодно, путь к нему только правильно пропишите. И GUID может быть любой (при ручном создании пункта меню он сам генерируется).


Показать сообщения:    

Текущее время: 24-Июн 23:51

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы