Ошибка 0xc000007b при попытке запустить \EFI \ubuntu \shimx64.efi (Ubuntu) через загрузчик Windows 8.1 в системе UEFI
EFI Записи
Во время установки Ubuntu Ubuntu автоматически создала начальную запись EFI, которая называется ubuntu
. Запись работает, если я использую загрузчик UEFI напрямую. Мои записи EFI Boot выглядят так:
Entry #9
Name: ubuntu
BCD ID: {a738afa2-8136-11e3-824f-806e6f6e6963}
Device: \Device\HarddiskVolume3
Bootloader Path: \EFI\ubuntu\shimx64.efi
Entry #18
Name: Windows 8.1
BCD ID: {current}
Drive: C:\
Bootloader Path: \Windows\system32\winload.efi
Использовать устройство - Подменю
Я хочу запустить ubuntu
через загрузчик Windows 8.1. На экране загрузчика Windows 8.1 у вас есть возможность выбрать Использовать устройство в подменю. В этом подменю перечислены все существующие загрузчики UEFI. Я могу выбрать ubuntu
и после перезагрузки могу правильно видеть экран GRUB.
Добавить запись в загрузчик Windows 8.1
Теперь я добавляю существующую запись из раздела Использование устройства в основной список загрузчика Windows 8.1:
bcdedit /displayorder {a738afa2-8136-11e3-824f-806e6f6e6963} /addlast
Вывод bcdedit:
c:\>bcdedit /enum
Windows-Start-Manager
---------------------
Bezeichner {bootmgr}
device partition=\Device\HarddiskVolume3
path \EFI\Microsoft\Boot\bootmgfw.efi
description Windows Boot Manager
locale de-DE
inherit {globalsettings}
integrityservices Enable
default {current}
resumeobject {dd3893a3-8112-11e3-a3ae-ef458f8a8f20}
displayorder {current}
{dd3893a8-8112-11e3-a3ae-ef459f8a8f20}
{a738afa2-8136-11e3-824f-806e6f6e6963}
toolsdisplayorder {memdiag}
timeout 5
Windows-Startladeprogramm
-------------------------
Bezeichner {current}
device partition=C:
path \Windows\system32\winload.efi
description Windows 8.1
locale de-DE
inherit {bootloadersettings}
recoverysequence {dd3893a5-8112-11e3-a3ae-ef458f8a8f20}
integrityservices Enable
recoveryenabled Yes
isolatedcontext Yes
allowedinmemorysettings 0x15000075
osdevice partition=C:
systemroot \Windows
resumeobject {dd3893a3-8112-11e3-a3ae-ef458f8a8f20}
nx OptIn
bootmenupolicy Standard
Firmwareanwendung (101fffff)
----------------------------
Bezeichner {a738afa2-8136-11e3-824f-806e6f6e6963}
device partition=\Device\HarddiskVolume3
path \EFI\ubuntu\shimx64.efi
description ubuntu
Если я затем ubuntu
из основного списка загрузчика Windows 8.1, после перезагрузки произойдет следующее сообщение об ошибке (оно переведено, поэтому оригинальная английская формулировка может отличаться):
Error during start of Windows.
File: \EFI\ubuntu\shimx64.efi
State: 0xc000007b
Info: The Application or the Operating System could not be loaded, because a required file is missing or it contains mistakes.
Обратите внимание, что запись из Использовать устройство все еще работает. Так что же случилось? Должна быть такая же запись?
Добавить запись вручную
Я также попытался добавить запись вручную:
bcdedit /create /d "Ubuntu Test" /application bootsector
bcdedit /set {UUID_generated_by_/create} device partition=\Device\HarddiskVolume3
bcdedit /set {UUID_generated_by_/create} path \EFI\ubuntu\shimx64.efi
bcdedit /displayorder {UUID_generated_by_/create} /addlast
Но такая же ошибка происходит.