Problema al recrear BCD en Windows 7 64 bits: no se puede encontrar el dispositivo del sistema solicitado

66

La actualización de los controladores de NVIDIA bloqueó mi instalación de Windows 7, por lo que estoy trabajando para deshacer el daño.

Lo que puedo hacer: puedo iniciar la instalación de Windows desde la unidad USB, y puedo iniciar el CD de inicio de Hiren . Aunque la reparación automática de Windows falla, puedo acceder al símbolo del sistema cuando inicio la instalación de Windows desde la unidad USB, y puedo ver mi unidad y todos mis datos.

Lo que no puedo hacer: no puedo iniciar Windows: recibo este mensaje:

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á mal con mi / Boot / BCD, así que estoy tratando de recrearlo desde cero. He probado todos los métodos detallados aquí (incluida la reparación de Windows que falla), y me queda el último (cerca de la parte inferior de esa página). Cuando escribo el siguiente comando como en el tutorial:

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

... falla con el siguiente error:

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

Muchos resultados de Google dicen que debo usar diskpart para configurar mi partición activa, sin embargo, ya está configurada como activa.

Además, cuando intento esto:

bcdedit /enum

Falla con un mensaje similar:

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

¿Alguien sabe qué significa ese mensaje de error y cuál es el dispositivo del sistema solicitado?

Me gustaría evitar tener que reinstalar Windows ya que todos los archivos en el disco parecen estar bien.

Domchi
fuente
¿Probaste el comando "bootrec / RebuildBcd"? (sin comillas)
Moab
44
Sí, me permite elegir mi instalación de Windows, pero cuando lo hago falla con "No se puede encontrar el dispositivo del sistema solicitado".
Domchi
Escriba solo bcdedit y publique la respuesta.
ThatGuyInIT
1
Windows 7 por defecto no almacena el BCD o la información de arranque en la partición C: la almacena en una partición de 100 MB y esta partición debe estar activa, no la C:
ThatGuyInIT
2
Sean, recibo el mismo mensaje de error cuando escribo bcdedit que cuando escribo bcdedit / enum, ver arriba.
Domchi

Respuestas:

55

No está directamente relacionado con su problema tal como lo resolvió, sino con su descripción original (particularmente "No se puede encontrar el dispositivo del sistema solicitado" en las operaciones de BCD a pesar de todos los intentos de recrear / reconstruir):

Este error puede ocurrir si está arrancando desde una memoria USB y su BIOS admite una ranura USB dada, ¡pero el entorno de reparación / PE de Windows no lo hace!

Pasé dos días sacándome el pelo, luchando con este problema (la tienda BCD SIEMPRE no estaba disponible con este error "No se puede encontrar el dispositivo del sistema solicitado", no importa lo que hice), solo para descubrir que el problema era simplemente el Ranura USB Estaba conectando mi dispositivo USB de arranque. Al conectarlo a una ranura diferente (usb 2.0 en lugar de usb 3.0), las acciones de reparación estándar funcionaron bien.

Para empeorar las cosas, más tarde descubrí que fue conectando la ranura incorrecta y permitiendo que el entorno de rescate intentara la reparación automática, ¡en primer lugar, estropeé las cosas!


Actualización: Otro usuario (computadoras mejoradas) me contactó para confirmar que esto también les sucedió a ellos; Como todas sus ranuras USB no fueron reconocidas por Windows 7 PE, terminaron teniendo que extraer la unidad y realizar la reparación en otra computadora.


Actualización: tuve dificultades incluso para reinstalar Windows en mi computadora portátil. De esta publicación aprendí y me di cuenta de que Windows 7 PE no reconoce la unidad USB. Aunque se inició desde la imagen de la unidad USB debido a alguna razón, no pudo iniciar el proceso de instalación. Después de todo un día de esfuerzos, finalmente lo probé con DVD y funcionó. Estoy usando Lenovo W520

Tao
fuente
2
Después de pasar 3 horas tratando de depurar ese mensaje de error, no puedo agradecerle lo suficiente. En serio, gracias! Nunca me hubiera imaginado que usar una ranura USB3 hubiera estado causando eso.
Corbin
44
+1 ¡Guau, lo mismo aquí! Acabo de salvar mi vida después de que un reparto salió mal.
mellamokb
Estoy extremadamente contento ahora que tengo 2 unidades usb2.0. Inicialmente estaba molesto con ellos (prefiriendo todos los usb3s), pero ahora me doy cuenta de lo útiles que son. Me preguntaba por qué mi mouse no funcionaba durante la recuperación. Eso debería haberme avisado de que no estaba reconociendo los puertos 3.0 por alguna razón.
sacarina
¡Gracias! esto simplemente solucionó mi frustrante intento de usar bootrec para arreglar una unidad clonada. Pop win7 recupera la memoria USB en otra ranura y estás listo para ir lol
Michael Nielsen
66
Impresionante hallazgo. Lamentablemente, esta no fue la solución en mi caso. Este error también puede deberse al intentar reparar una instalación de Windows UEFI desde una unidad USB que se ha iniciado en modo no UEFI. Vea mi respuesta: superuser.com/a/959489/178217
Jan-Philip Gehrcke
50

Nada de otras respuestas ayudó en mi caso y no tuve la capacidad de cargar Windows RE desde el DVD. Espero que esta respuesta quede atrapada en mis ojos.

Probé soluciones de guías vinculadas y terminé sin ningún BCD (en realidad no sé si estaba allí al principio). Entonces, lo que me salvó de reinstalar todo el sistema fue:

bcdboot.exe C:\Windows /s C:

Espero que ayude a alguien.


Actualización: Esto finalmente funcionó para mí con una pequeña modificación. Mi problema fue un problema combinado de muchos enumerados aquí (arrancar desde el palo, atornillar el arranque inicial de trabajo).

Mi problema fue que RE registró mi unidad de Windows como D:\, mientras que C:\normalmente era . Correr bcdboot.exe D:\Windows /s C:hizo el truco!

imy
fuente
3
Nada más funcionaba, ¡pero esto funcionó!
bourbaki4481472
3
Eres mi héroe.
Erwin
Oh dios, esto fue muy simple. ¡Nada de eso piratea un BCD a mano!
Bigbio2002
Esto es todo, si arranca desde una memoria USB, debe usar este método, usando la unidad D: para actualizar el almacenamiento (-s) en D :.
razor7
bcdboot.exe D: \ Windows / s C: funcionó para mí, ya que mientras estaba en la línea de cmd de recuperación vio mi disco, tenía todas mis cosas como D:
user1821961
19

Entonces, así es como finalmente lo resolví.

La recreación de BCD como en el capítulo "holocausto nuclear" del tutorial que mencioné en mi pregunta funcionó al final, pero con una pequeña modificación. Tengo la idea en este hilo . Parece que el mensaje que recibí me decía que bcdedit no puede encontrar la tienda BCD. Entonces, en lugar de escribir esto:

bcdedit /import c:\boot\bcd.temp

... Solo necesitaba señalar manualmente la tienda:

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

Esto también es necesario para el resto de comandos en el tutorial:

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

Con esa modificación, todos los comandos en el tutorial funcionan como se esperaba. Cuando recreé BCD, pude arrancar mi Windows original.

Domchi
fuente
99
Eso es muy extraño, ya que bcdedit /? storedice que This option may not be used with the /createstore, /import, or /export commands. intentar usarlo de todos modos da como resultado The store import command is invalid. Me alegro de que te haya funcionado.
Dave
El mismo error aquí ... ¿Alguien tiene una pista?
PLPeeters
2
Dave tiene razón en su afirmación de que la /storebandera no se puede usar con la /importbandera, simplemente me encuentro con esto. La solución es no crear una tienda temporal e importar, sino simplemente crear y trabajar en la tienda real usando la /storebandera para todos los comandos. Acabo de ejecutarlo de esta manera para arreglar mi sistema y funciona. He editado la respuesta anterior para corregirla.
Nathan Brown el
Entonces, ¿dónde está la edición?
George Birbilis
@NathanBrown: ¿puedes explicar a qué te refieres? ¿Aún mejor agregar una respuesta completa? ¿Qué comandos usaste para arreglar esto?
Adi Shavit
14

El mismo problema aparece cuando la instalación de Windows en el disco está configurada para el arranque UEFI, pero el proceso de reparación se intenta a partir de comandos almacenados en una unidad USB que se ha iniciado en modo no UEFI ("heredado").

Entonces, imagine que tiene una unidad USB de configuración de arranque de Windows 8 que no se puede iniciar en modo UEFI, sino solo en modo heredado. Uno podría pensar que simplemente puede cambiar la configuración del BIOS de arranque UEFI a arranque heredado. Y, de hecho, después de este cambio, la unidad USB se puede iniciar y, por supuesto, se puede acceder al símbolo del sistema de Windows. Sin embargo, en esa situación no se puede "reparar" la instalación de Windows en el disco que se ha instalado y utilizado previamente en modo UEFI.

En ese escenario (modo de arranque "heredado" y arranque desde la unidad USB de instalación de Windows 8), la ejecución de bootrec /rebuildbcdfalla con The requested system device cannot be found. Y BCDBoot C:\Windowsfalla conFailure when attempting to copy boot files.

La solucion es

  1. para crear una unidad USB de arranque UEFI adecuada (con, por ejemplo, Rufus como se describe aquí ) y luego
  2. para cambiar el BIOS del modo de arranque "heredado" al modo de arranque UEFI, seguido de
  3. arranque desde la unidad USB

El proceso de reparación iniciado desde allí fue exitoso en mi caso: BCDBoot C:\Windowsluego fue exitosoBoot files successfully created.

El problema original era "Código de error: 0xc0000034 - El archivo de datos de configuración de arranque no tiene la información requerida" en Windows 8, como se explica aquí .

Jan-Philip Gehrcke
fuente
Forzar el modo UEFI en el BIOS me permitió proceder con éxito (¡y terminar!) Con el restablecimiento / repartición con la unidad de recuperación creada previamente desde Windows 8.
mlt
¡gracias! Pasé todo el fin de semana tratando de arreglar mi sistema sin reinstalar Windows. Esta respuesta finalmente lo resolvió para mí. Tuve que crear una unidad USB de arranque de BIOS heredada adecuada, porque mi Windows se instaló usando BIOS heredado (no UEFI como creía por primera vez). La instalación de Windows y el modo de arranque de la unidad USB deben coincidir. de lo contrario el bootrec /rebuildbcdy bcdeditcomandos fallará.
Buju
2

Tuve una causa diferente y una solución a este problema. En mi caso, el problema era que había usado un ISO de Windows 7 Enterprise para crear una unidad flash USB de arranque con Unetbootin, según las instrucciones aquí: http://www.webupd8.org/2010/10/create-bootable-windows-7 -usb-drive.html . Básicamente, las instrucciones dicen formatear la unidad usb con ntfs y usar Unetbootin v494 (desactualizado) que todavía tenía la característica para permitirle usar unidades formateadas con ntfs (esta característica desapareció en versiones posteriores).

Algo hormigueante en la parte posterior de mi cabeza me dijo que un procedimiento no estándar iba a causar dolor de cabeza, pero lo ignoré.

Después de una hora de búsqueda en el foro, alguien en alguna parte mencionó "no use una unidad usb de arranque ya que el entorno de recuperación verá esa tabla de particiones y no la real en el disco duro", o algo por el estilo.

Encontrado mi unidad de CD-ROM USB, poner el disco real en ese país, y corrió bootrec /fixmbr, bootrec /fixbooty bootrec /rebuildbcdsin problemas. Windows comenzó bien, tanto desde grub como cuando se eligió el disco duro secundario de la lista de arranque de la BIOS.

Johann
fuente
2
The requested system device cannot be found.

Recibí el mismo mensaje de error cuando intentaba reparar Windows después de convertir mi disco duro de MBR a GPT. Cuando intenté la reparación automática, Windows incluso informó que la versión instalada no era una versión compatible de Windows. Descubrí que la BIOS de MSI tenía dos opciones para arrancar desde DVD-ROM que se parecía a esto:

SATA3:DVD Drive
UEFI:DVD Drive

Solo comenzaría el arranque UEFI cuando lo seleccioné manualmente. De lo contrario, seguiría arrancando desde el DVD-ROM pero no en modo UEFI. Después de seleccionar UEFI, pude reparar mi sistema Windows 7 de forma manual y automática.

Ahora he deshabilitado por completo para arrancar desde CD / DVD, obligándome a usar el menú de arranque de BIOS y elegir cómo arrancar.

wimh
fuente
1

En situaciones como estas, he encontrado que " EasyBCD " es realmente muy útil. Te sugiero que le des un giro y veas si no puede salvarte.

Espero que ayude amigo. ¡Salud!

James T Snell
fuente
Me gustaría, pero para ejecutar EasyBCD necesito Windows 7. de arranque, que no tengo. El tutorial para regenerar BCD con el que estoy trabajando anteriormente, y que no puedo seguir, es en realidad del sitio web de EasyBCD. ¿Se puede ejecutar EasyBCD desde la consola de reparación de Windows o desde Linux ...?
Domchi
No se puede instalar en Windows XP que viene con Hiren's Boot CD, la instalación falla cuando se supone que instala .NET y se cancela automáticamente. Pero incluso si lo instalé, WinXP no ve el disco NTFS con BCD ...
Domchi
Al final, logré instalar EasyBCD en la otra máquina y hacer que masticara mi archivo BCD que copié allí. Pero nunca llegué a hacer nada útil con él ...
Domchi
1

Inicie un disco de instalación de Windows 7 x64 e inicie la reparación de Inicio, pero cancélelo antes de que comience a intentar repararlo, verá un enlace para Opciones avanzadas, que le permitirá acceder al símbolo del sistema, deberá hacer la partición de 100 MB activo si activó la partición del sistema operativo por error.

  1. Coloque el disco de instalación de Windows 7 x64 en la unidad de disco y luego inicie la computadora.
  2. Presione una tecla cuando se le solicite.
  3. Seleccione un idioma, una hora, una moneda, un teclado o un método de entrada, y luego haga clic en Siguiente.
  4. Haz clic en Reparar tu computadora.
  5. Haga clic en el sistema operativo que desea reparar y luego haga clic en Siguiente.
  6. En el cuadro de diálogo Opciones de recuperación del sistema, haga clic en Símbolo del sistema.

    diskpart seleccionar disco 0 seleccionar parte 1 activo

Reinicie y reinicie en el disco de instalación de 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
fuente
En el paso 5. No tengo ningún sistema operativo en la lista. No tengo una partición de 100 MB, nunca la tuve, y mi partición ya está activa, como dije en mi pregunta. Intenté todo lo que KB que mencionas sugiere, pero bootrec / RebuildBcd falla con "No se puede encontrar el dispositivo del sistema solicitado".
Domchi
Suena como un disco duro defectuoso o un sistema de archivos dañado. Ejecute chkdsk / r También puede probar el disco duro usando un disco en vivo de Linux como PartedMagic partedmagic.com , que tiene una herramienta llamada GSmartControl para verificar si los discos duros tienen errores y ejecutar pruebas SMART. También contiene una herramienta llamada testdisk, que puede usarse para intentar reparar el sistema de archivos cgsecurity.org/wiki/TestDisk
ThatGuyInIT
El disco duro y el sistema de archivos están bien: puedo ver todos los datos del entorno Linux PartedMagic. Además, TestDisk fue lo que usé anteriormente para arreglar MBR. Antes de usar TestDisk, ni siquiera podía acceder a la partición. Mi problema es definitivamente el archivo BCD incorrecto, y realmente me gustaría saber por qué no puedo recrearlo y qué es ese dispositivo del sistema solicitado que no puede encontrar.
Domchi
¡Solo puede presionar [Shift] + [F10] en el paso 3 para llegar al mensaje!
piksel bitworks
0

En mi caso, ninguna de las soluciones anteriores ayudó.

El reinicio de una VM de Windows Server 2016 en VMware Esxi 6.5 falló con "SO no encontrado". Sospeché una actualización que se instaló durante el apagado. No pude arreglarlo con diskpart, bootrec, bcdedit y restaurar desde Backup. Tampoco tenía nada que ver con EFI (arranque seguro) o modo BIOS.

La solución fue cambiar Systemdrive (atrás) a Dispositivo SCSI 0: 0.

Un disco adicional que agregué semanas antes tenía el dispositivo SCSI 0: 0 y el Systemdrive estaba en 0: 1. Cómo podría suceder esto, no lo sé, pero sospecho que hay un error en Vsphere Web-Client.

Tim Haegele
fuente