
A pergunta apareceu depois de perguntar issoum. Parece que o Win8.1 UEFI x64 Boot Manager não consegue inicializar nada além do próprio Windows (winload.efi). Tentar iniciar qualquer outra imagem UEFI (.efi) fornece o código de erro 0xC000007B e tenho certeza de que isso não é por causa de um arquivo ausente, mas porque o arquivo é 'inválido' como quando eu renomeio esse arquivo o erro muda para 0xC000000F. Desativei a inicialização segura, mas sem sorte.
No momento estou tentando integrar orEFIndcarregador de inicialização. Posso dizer que a imagem UEFI está funcionando, pois é capaz de inicializar a partir de uma unidade flash USB usando o firmware. No entanto, usar o Gerenciador de inicialização do Windows fornece os mesmos resultados explicados acima (código de erro 0xC000007B). No momento minha configuração BCD é (foto):
Captura de tela da linha de comando http://imageshack.com/a/img811/7857/kbth.png
Assim F:\rEfit\refind
como o diretório onde o refind está armazenado e "refind_x64.efi" é a imagem do programa.
NOTA: Também estou me perguntando se apenas imagens UEFI (arquivos .efi) podem inicializar em um Windows UEFI e também qual é o formato das imagens não UEFI (como ntldr
, bootmgr
)?
EDIT: Mover o rEFInd para um diretório padrão ("EFI") não resolveu o problema.
Responder1
Depois de 1 ano me deparei com o mesmo problema novamente. Felizmente desta vez encontrei uma solução. Para adicionar um OsLoader no gerenciador de inicialização do Windows que carrega imagens UEFI não-Windows, você precisa editar manualmente o registro BCD. No RegEdit há uma chave chamada "HKEY_LOCAL_MACHINE\BCD00000000" - que é carregada da partição do sistema EFI do Windows e a edição de suas subchaves editam diretamente o arquivo BSD. Abaixo dela há uma chave chamada "Descrição", mas vamos nos concentrar na outra chamada "Objetos". Abaixo dele você precisa de um novo objeto (ou modificar o existente). Em seguida, sob o nome do GUID do objeto de destino, você precisa editar o valor do tipo "Descrição" para "0x10100003" (o que significa osloader do aplicativo de firmware - os créditos para esta descoberta vão para estepágina). É isso aí - então os elementos 'path' e 'device' deste objeto especificam um arquivo UEFI que será carregado quando o OS-Loader for selecionado.
GRANDE AVISO:
Não faça o procedimento acima apenas para testá-lo - carregar um Uefi desta forma o queima na configuração de inicialização do Uefi e após o carregamento - você pode não conseguir inicializar o Windows novamente (a menos que o aplicativo que você carregou não redefina o Uefi Boot Cfg) - então use isso somente se tiver certeza.
Eu fiz isso e então devo consertar manualmente a inicialização do Windows usandoCfg de inicialização Uefi. Qual é o preferido para usar.
EDIT: esqueci de acrescentar que primeiro você precisa ter permissão para editar "HKEY_LOCAL_MACHINE\BCD00000000", o que é fácil - basta clicar em Propriedades e alterar as permissões;).
EDIT: Esta descoberta mostra que a maneira mais poderosa (e fácil - pelo menos para mim) de editar o Windows BSD é usando o registro. O comportamento que consegui ao fazer isso não é possível usando o BCDedit, nem o BCD WMI.
Responder2
A EFI é umapré-inicializaçãoambiente. Como tal, o EFI em si não é uma ferramenta do Windows, uma ferramenta do Linux ou qualquer outra ferramenta no nível do sistema operacional. Quero deixar isso claro porque algumas de suas frases fazem parecer que você pensa que a EFI faz parte do Windows. Não é.
O caminho rEfit\refind
é incomum para um programa de inicialização EFI. Esses programas normalmente residem em subdiretórios do EFI
diretório no ESP, como em EFI\refind
ou EFI\Microsoft
. Embora seja improvável que esse local fora do padrão seja a origem do seu problema, não posso descartar essa possibilidade. Assim, usar um local mais normal é minha primeira sugestão.
Não estou muito familiarizado com a saída do bcdedit
comando do Windows que você mostrou, então não posso comentar; no entanto, posso sugerir que você revise as instruções de instalação do rEFInd para instalação no Windows. É perfeitamente possível que você tenha errado ao digitar um dos comandos.
Se isso não ajudar, tente instalar o rEFInd de outro sistema operacional. Presumivelmente você instalou o rEFInd para inicializar outra coisa junto com o Windows. Para a maioria das pessoas, isso é Linux, e se as ferramentas do Windows não estiverem funcionando, você poderá instalar o rEFInd do Linux.
Responder3
Todos os gerenciadores/carregadores de inicialização efi precisam estar na partição ESP; você não pode reencontrar sua unidade F:, que provavelmente está formatada como uma unidade NTFS. Os sistemas EFI procuram em uma partição específica que é rotulada como "ESP" e formatada como fat32. Os sistemas EFI não possuem drivers para outros sistemas de arquivos.
refind inclui drivers para ext2/4 reiserfs btrfs e iso9660, mas como você pode ver, seu carregador EFI do Windows está localizado em \EFI\Microsoft\Boot\bootmgfw.efi. Esta partição não pode ser visualizada no Windows porque está oculta, mas se você inicializar com um Linux live (com o gparted, por exemplo), você poderá vê-la. Então você precisa colocar refind em \EFI\refind para que o carregador rEFInd esteja em \EFI\refind\bootx64.efi
Então você pode tentar fazer o carregamento em cadeia a partir do carregador do Windows, mas seria muito melhor apontar seu sistema para o arquivo .efi do refind como o carregador padrão, pois isso fará a varredura em seu sistema e fornecerá ícones que representam as opções de inicialização efi/legacy disponíveis para você. Eu uso o refind e quando ligo meu laptop tenho um ícone do windows 7, um ícone do windows 8, um ícone do ubuntu, um ícone do fedora e um ícone do ubuntustudio para escolher. Se eu tiver USBs ou DVDs inicializáveis inseridos, um ícone também aparecerá para eles.
Funciona muito bem com as configurações padrão, mas também é facilmente personalizável. Você não poderá carregar um bootloader efi de qualquer partição que não seja a partição ESP fat32, embora uma vez carregado o refind da partição ESP ele possa acessar carregadores efi e carregadores legados em outras partições.