Problema ao recriar o BCD no Windows 7 de 64 bits - O dispositivo do sistema solicitado não pode ser encontrado

66

A atualização dos drivers da NVIDIA travou minha instalação do Windows 7, então estou trabalhando para desfazer o dano.

O que posso fazer: Posso inicializar a instalação do Windows a partir da unidade USB e o CD de inicialização do Hiren . Embora o reparo automatizado do Windows falhe, posso acessar o prompt de comando ao inicializar a instalação do Windows a partir da unidade USB e posso ver minha unidade e todos os meus dados.

O que não posso fazer: Não consigo inicializar no Windows - recebo esta mensagem:

Windows failed to start. A recent hardware or software change might be the cause. To fix the problem:
1. Insert Windows CD and run a repair your computer option.
File: /Boot/BCD
Status: 0xc000000f
Info: an error occurred while attempting to read the boot configuration data.

Parece que algo está errado com o meu / Boot / BCD, então estou tentando recriá-lo do zero. Eu tentei todos os métodos detalhados aqui (incluindo o reparo do Windows que falha) e fiquei com o último (perto da parte inferior dessa página). Quando digito o seguinte comando, como no tutorial:

bcdedit.exe /import c:\boot\bcd.temp

... falha com o seguinte erro:

The store import operation has failed.
The requested system device cannot be found.

Muitos resultados do Google dizem que devo usar o diskpart para ativar minha partição, mas ela já está definida como ativa.

Além disso, quando eu tento isso:

bcdedit /enum

Falha com mensagem semelhante:

The boot configuration data store could not be opened.
The requested system device cannot be found.

Alguém sabe o que significa essa mensagem de erro e qual é o dispositivo do sistema solicitado?

Gostaria de evitar a reinstalação do Windows, pois todos os arquivos no disco parecem estar bem.

Domchi
fonte
Você tentou o comando "bootrec / RebuildBcd"? (sem aspas)
Moab
4
Sim, permite-me escolher minha instalação do Windows, mas quando o faço, falha com "O dispositivo do sistema solicitado não pode ser encontrado".
Domchi
Digite apenas bcdedit e poste a resposta.
ThatGuyInIT
11
O Windows 7 por padrão, não armazenar o BCD ou as informações de inicialização na partição C:, ele armazena-lo em uma partição de 100MB e esta partição precisa estar ativo, e não a C:
ThatGuyInIT
2
Sean, recebo a mesma mensagem de erro quando digito bcdedit e quando digito bcdedit / enum, veja acima.
Domchi

Respostas:

55

Não está diretamente relacionado ao seu problema quando você o resolveu, mas à sua descrição original (principalmente "O dispositivo do sistema solicitado não pode ser encontrado." Nas operações do BCD, apesar de todas as tentativas de recriar / reconstruir):

Este erro pode ocorrer se você estiver inicializando a partir de um pendrive e o BIOS suportar um determinado slot USB, mas o ambiente de reparo / PE do Windows não!

Passei dois dias puxando meu cabelo, lutando com esse problema (a loja BCD SEMPRE estava indisponível com o erro "O dispositivo do sistema solicitado não pode ser encontrado.", Não importa o que eu fiz), apenas para descobrir que o problema era simplesmente o Slot USB Eu estava conectando meu stick USB inicializável. Ao conectá-lo a um slot diferente (usb 2.0 em vez de usb 3.0), as ações de reparo padrão funcionaram bem.

Para piorar a situação, descobri mais tarde que foi conectando o slot errado e permitindo que o ambiente de resgate tentasse o reparo automático que eu estraguei tudo!


Atualização: Outro usuário (computadores aprimorados) entrou em contato comigo para confirmar que isso também aconteceu com eles; Como todos os seus slots USB não foram reconhecidos pelo Windows 7 PE, eles acabaram tendo que puxar a unidade e executar o reparo em outro computador.


Atualização: tive dificuldade até em reinstalar o Windows no meu laptop. Neste post, aprendi e percebi que o Windows 7 PE não reconhece a unidade USB. Embora tenha sido inicializado a partir da imagem da unidade USB devido a algum motivo, não foi possível iniciar o processo de instalação. Depois de um dia inteiro de esforços, finalmente tentei com o DVD e funcionou. Estou usando o Lenovo W520

Tao
fonte
2
Depois de passar apenas três horas tentando depurar essa mensagem de erro, não posso agradecer o suficiente. Sério, obrigado! Eu nunca imaginaria que o uso de um slot USB3 estaria causando isso.
Corbin
4
+1 Uau, o mesmo aqui! Acabei de salvar minha vida depois que uma repartição deu errado.
precisa saber é o seguinte
Estou extremamente feliz agora que tenho 2 unidades usb2.0. Fiquei inicialmente irritado com eles (preferindo todos os usb3s), mas agora percebo o quanto eles são úteis. Fiquei me perguntando por que meu mouse não estava funcionando durante a recuperação. Isso deveria ter me dado a entender que não estava reconhecendo portas 3.0 por algum motivo.
sacarina
obrigado! isso apenas corrigiu minha tentativa frustrada de usar o bootrec para corrigir uma unidade clonada. Pop win7 recuperar stick USB em outro slot e você está pronto para ir lol
Michael Nielsen
6
Achado impressionante. Infelizmente, essa não foi a solução no meu caso. Este erro também pode ser causado pela tentativa de reparar uma instalação do UEFI Windows a partir de uma unidade USB que foi inicializada no modo não UEFI. Veja minha resposta: superuser.com/a/959489/178217
Jan-Philip Gehrcke
50

Nada de outras respostas ajudou no meu caso e eu não tinha a capacidade de carregar o Windows RE a partir do DVD. Espero que essa resposta fique presa nos meus olhos.

Tentei soluções de guias vinculados e terminei sem o BCD (na verdade, não sei se estava lá no começo). Então, o que me impediu de reinstalar todo o sistema foi:

bcdboot.exe C:\Windows /s C:

Espero que ajude alguém.


Atualização: Isso finalmente funcionou para mim com uma pequena modificação. Meu problema foi um problema combinado de muitos listados aqui (inicializando a partir do stick, ferrando com o BOOT inicial).

Meu problema era que o RE registrou o Windows drive como D:\, C:\normalmente. Correr bcdboot.exe D:\Windows /s C:fez o truque!

eu meu
fonte
3
Nada mais estava funcionando, mas isso funcionou!
precisa saber é o seguinte
3
Você é meu herói.
Erwin
Oh Deus, isso era tão simples. Nada disso hackear um BCD à mão!
Bigbio2002
É isso, se você inicializar a partir de um pendrive, precisará usar esse método, usando a unidade D: para atualizar o armazenamento (-s) em D :.
razor7
BCDboot.exe D: \ Windows / s C: funcionou para mim como enquanto na recuperação cmd alinhá-lo vi o meu carro eu tinha todas as minhas coisas sobre como D:
user1821961
19

Então, aqui está como eu finalmente resolvi.

A recriação do BCD como no capítulo "holocausto nuclear" do tutorial que mencionei na minha pergunta funcionou no final, mas com uma pequena modificação. Eu tive a ideia neste tópico . Parece que a mensagem que recebi estava me dizendo que o bcdedit não pode encontrar a loja do BCD. Então, em vez de digitar isso:

bcdedit /import c:\boot\bcd.temp

... Eu só precisava apontar manualmente para a loja:

bcdedit /store c:\Boot\BCD /import c:\boot\bcd.temp

Isso também é necessário para o restante dos comandos no tutorial:

bcdedit /store c:\Boot\BCD <the rest of the command>

Com essa modificação, todos os comandos no tutorial funcionam como esperado. Quando recriei o BCD, consegui inicializar o Windows original.

Domchi
fonte
9
Isso é muito estranho, já que bcdedit /? storediz que This option may not be used with the /createstore, /import, or /export commands. Tentar usá-lo de qualquer maneira resulta que The store import command is invalid. Fico feliz que funcionou para você.
Dave
Mesmo erro aqui ... Alguém tem uma pista?
PLPeeters
2
Dave está correto em sua afirmação de que a /storebandeira não pode ser usada com a /importbandeira - apenas me deparei com isso. A solução é não criar uma loja temporária e importar, mas apenas criar e trabalhar na loja real usando o /storesinalizador para todos os comandos. Eu apenas o executei dessa maneira para corrigir meu sistema e ele funciona. Eu editei a resposta acima para corrigi-la.
Nathan Brown
então onde está a edição?
31716 George Burbilis
@ NathanBrown: você pode explicar o que você quer dizer? Ainda melhor adicionar uma resposta completa? Quais comandos você usou para corrigir isso?
Adi Shavit
14

O mesmo problema aparece quando a instalação do Windows no disco está configurada para inicialização UEFI, mas o processo de reparo é tentado a partir de comandos armazenados em uma unidade USB que foi inicializada no modo não UEFI ("legado").

Então, imagine que você tenha uma unidade USB inicializável de instalação do Windows 8 que não pode ser inicializada no modo UEFI, mas apenas no modo herdado. Pode-se pensar que é possível simplesmente alterar a configuração do BIOS de inicialização UEFI para inicialização herdada. E, de fato, após essa alteração, a unidade USB pode ser inicializada e é possível acessar o prompt de comando do Windows, é claro. No entanto, nessa situação, não é possível "reparar" a instalação do Windows no disco que foi instalado e usado anteriormente no modo UEFI.

Nesse cenário (modo de inicialização "legado" e inicialização a partir da unidade USB de instalação do Windows 8), a execução de bootrec /rebuildbcdfalha com The requested system device cannot be found. E BCDBoot C:\Windowsfalha comFailure when attempting to copy boot files.

A solução é

  1. para criar uma unidade USB inicializável UEFI adequada (com, por exemplo, a Rufus, conforme descrito aqui ) e, em seguida,
  2. para alternar o BIOS do modo de inicialização "herdado" para o modo de inicialização UEFI, seguido de
  3. inicializando a partir da unidade USB

O processo de reparo iniciado a partir de lá foi bem-sucedido no meu caso: BCDBoot C:\Windowsdepois teve êxito comBoot files successfully created.

O problema original era "Código de erro: 0xc0000034 - Arquivo de dados de configuração de inicialização sem informações necessárias" no Windows 8, conforme discutido aqui .

Jan-Philip Gehrcke
fonte
Forçar modo de UEFI BIOS em me permitiu avançar com sucesso com a redefinição / reparticionamento com unidade de recuperação previamente criado a partir do Windows 8. (e terminar!)
mlt
obrigado! Passei o fim de semana inteiro tentando consertar meu sistema sem reinstalar o Windows. Esta resposta finalmente resolveu para mim. Eu tive que criar uma unidade USB inicializável do BIOS legada adequada, porque meu Windows foi instalado usando o BIOS legado (não UEFI, como eu pensava). A instalação do Windows e o modo de inicialização da unidade USB devem corresponder. caso contrário, os comandos bootrec /rebuildbcde bcdeditfalharão.
Buju 22/01
2

Eu tinha uma causa e solução diferentes para esse problema. No meu caso, o problema era que eu havia usado uma ISO do Windows 7 Enterprise para criar uma unidade flash USB inicializável com o Unetbootin, de acordo com as instruções aqui: http://www.webupd8.org/2010/10/create-bootable-windows-7 -usb-drive.html . Basicamente, as instruções dizem para formatar a unidade USB com NTFS e usar o Unetbootin v494 (desatualizado), que ainda tinha o recurso para permitir o uso de unidades formatadas com NTFS (esse recurso desapareceu nas versões posteriores).

Algo formigou na parte de trás da minha cabeça e me disse que um procedimento não-padrão causaria dor de cabeça, mas eu o ignorei.

Após uma hora de busca no fórum, alguém em algum lugar mencionado "não use uma unidade USB inicializável, pois o ambiente de recuperação verá essa tabela de partição e não a real no disco rígido", ou algo nesse sentido.

Encontrei o meu drive de CD-ROM USB, coloque o disco real lá, e correu bootrec /fixmbr, bootrec /fixboote bootrec /rebuildbcdsem problemas. O Windows então começou bem, tanto no grub quanto quando o disco rígido secundário foi escolhido na lista de inicialização da bios.

Johann
fonte
2
The requested system device cannot be found.

Eu tive a mesma mensagem de erro quando estava tentando reparar o Windows depois de converter meu disco rígido de MBR para GPT. Quando tentei o reparo automático, o Windows até relatou que a versão instalada não era compatível com o Windows. Descobri que o BIOS da MSI tinha duas opções para inicializar a partir de DVD-ROM que eram semelhantes a isso:

SATA3:DVD Drive
UEFI:DVD Drive

Ele só iniciaria a inicialização do UEFI quando eu a selecionasse manualmente. Caso contrário, ele ainda inicializaria a partir do DVD-ROM, mas não no modo UEFI. Depois de selecionar a UEFI, eu poderia reparar manual e automaticamente o sistema Windows 7.

Agora, desativei completamente a inicialização do CD / DVD, forçando-me a usar o menu de inicialização da bios e escolher como inicializar.

wimh
fonte
1

Eu descobri em situações como essas que o " EasyBCD " é realmente muito útil. Eu sugiro que você dê um giro e veja se não pode te salvar.

Espero que ajude cara. Felicidades!

James T Snell
fonte
Eu gostaria, mas para executar o EasyBCD, preciso do Windows 7. inicializável, o que não tenho. O tutorial para regenerar o BCD com o qual estou trabalhando acima, e que não consigo acompanhar, é realmente do site EasyBCD. O EasyBCD pode ser executado no console de reparo do Windows ou no Linux ...?
Domchi
Não é possível instalá-lo no Windows XP que acompanha o CD de inicialização do Hiren, a instalação falha quando é necessário instalar o .NET e se cancela automaticamente. Mas mesmo se eu instalei ele, WinXP não vê disco NTFS com BCD ...
Domchi
No final, consegui instalar o EasyBCD na outra máquina e tê-lo mastigado no meu arquivo BCD que copiei lá. Mas eu nunca consegui fazer nada de útil com ele ...
Domchi
1

Inicialize um disco de instalação do Windows 7 x64 e inicie o reparo da Inicialização, mas cancele-o antes que ele comece a tentar reparar; você verá um link para Opções Avançadas, que permitirá acessar o prompt de comando, será necessário criar a partição de 100MB ativo se você ativou a partição do SO por engano.

  1. Coloque o disco de instalação do Windows 7 x64 na unidade de disco e inicie o computador.
  2. Pressione uma tecla quando for solicitado.
  3. Selecione um idioma, uma hora, uma moeda, um teclado ou um método de entrada e clique em Avançar.
  4. Clique em Reparar seu computador.
  5. Clique no sistema operacional que você deseja reparar e clique em Avançar.
  6. Na caixa de diálogo Opções de recuperação do sistema, clique em Prompt de comando.

    diskpart select disk 0 selecione a parte 1 ativa

Reinicialize e inicialize novamente no disco de instalação do Windows 7 x64.

bcdedit /export C:\BCD_Backup
c:
cd boot
attrib bcd -s -h -r
ren c:\boot\bcd bcd.old
bootrec /RebuildBcd

http://support.microsoft.com/kb/927392

ThatGuyInIT
fonte
Na etapa 5. Não tenho nenhum sistema operacional listado. Não tenho partição de 100 MB, nunca tive, e minha partição já está ativa, como eu disse na minha pergunta. Tentei tudo o que você mencionou sugere, mas o bootrec / RebuildBcd falha com "O dispositivo do sistema solicitado não pode ser encontrado".
Domchi
Parece que talvez um disco rígido ruim ou um sistema de arquivos corrompido. Execute chkdsk / r Você também pode testar o disco rígido usando um disco ao vivo do Linux como o PartedMagic partedmagic.com , que possui uma ferramenta chamada GSmartControl para verificar erros nos discos rígidos e executar testes SMART. Ele também contém uma chamada de ferramenta testdisk, que pode ser usada para tentar reparar o sistema de arquivos cgsecurity.org/wiki/TestDisk
ThatGuyInIT
O disco rígido e o sistema de arquivos estão OK - posso ver todos os dados do ambiente Linux PartedMagic. Além disso, o TestDisk era o que eu costumava usar para corrigir o MBR. Antes de usar o TestDisk, eu nem conseguia acessar a partição. Meu problema é definitivamente o arquivo BCD incorreto, e gostaria muito de saber por que não consigo recriá-lo e qual é o dispositivo de sistema solicitado que ele não consegue encontrar.
Domchi
Você pode simplesmente pressionar [Shift] + [F10] na etapa 3 para chegar ao prompt!
Piksel bitworks
0

No meu caso, nenhuma das soluções acima ajudou.

A reinicialização de uma VM do Windows Server 2016 no VMware Esxi 6.5 falhou com "SO não encontrado". Suspeitei de uma atualização que foi instalada durante o desligamento. Não foi possível corrigi-lo com diskpart, bootrec, bcdedit e restauração do Backup. Também não tinha nada a ver com o modo EFI (inicialização segura) ou BIOS.

A solução estava alterando o Systemdrive (volta) para SCSI Device 0: 0.

Um disco adicional que eu adicionei semanas antes tinha o Dispositivo SCSI 0: 0 e o Systemdrive estava em 0: 1. Como isso pode acontecer, eu não sei, mas suspeito de um bug no Vsphere Web-Client.

Tim Haegele
fonte