¿Puedo reparar el error 0xc0000225 sin reinstalar Windows?


16

Tengo un sistema que inicia Gentoo Linux y Windows 7 con GRUB2. La computadora tiene cuatro unidades, y Windows está instalado en la tercera (última) partición de la unidad # 2. El diseño del disco se ve así:

|boot|-----------------home-----------------|-------------windows-------------|

( booty homeson particiones de Linux) Es una configuración extraña pero siempre funcionó, hasta que decidí reducir la partición de Windows usando Gparted. El nuevo diseño es:

|boot|-----------------------home-----------------------|-------windows-------|

Después de hacer estos cambios en la partición, cuando selecciono la opción de Windows en GRUB2 y le entrega el control al gestor de arranque de Windows, aparece el mensaje de error:

Windows Boot Manager  

Windows no pudo iniciarse. Un cambio reciente de hardware o software podría ser la causa. Para solucionar el problema:   1. Inserte el disco de instalación de Windows y reinicie su computadora.   2. Elija la configuración de idioma y luego haga clic en "Siguiente".   3. Haga clic en "reparar su computadora". Si no tiene este disco, comuníquese con el administrador del sistema o la computadora fabricante para asistencia.   Estado: 0xc0000225   Información: La selección de arranque falló porque no se puede acceder a un dispositivo requerido.

No estoy particularmente sorprendido de que esto suceda, pero me pregunto si puedo solucionarlo sin reinstalar Windows.

He intentado arrancar la computadora usando el DVD de instalación de Windows (específicamente, un DVD de actualización de Windows 7). Después de elegir el idioma y el teclado y hacer clic en "Reparar esta computadora", la pantalla Opciones de recuperación del sistema no detecta mi partición de Windows . De todos modos, puedo hacer clic en "Siguiente" y luego usar Reparación de inicio, que no soluciona el problema , o probar las herramientas de línea de comandos, a saber bootrec(sugerido por varios sitios web) sfc, y chkdsk. Ninguno de ellos hizo la diferencia; Sigo teniendo el mismo mensaje de error. (Consulte a continuación la salida detallada).

También, como se sugiere en preguntas similares, intenté usar la funcionalidad "Reconstruir BS" (reconstruir el sector de arranque) en TestDisk , ejecutándose en Linux, actuando en la partición de Windows. Eso tampoco cambió el error que recibo.

No he visto ningún signo de corrupción de datos en ninguna de las particiones, y las unidades no han sufrido ningún daño físico, por lo que parece bastante seguro de que el cambio en el diseño de la partición es la causa de este error. Supongo que Windows debe tener el sector inicial y / o el tamaño de la partición almacenados en algún lugar dentro de su sistema de archivos (¿el registro?), Lo que sugiere que, en principio , debería ser posible solucionar esto girando un par de bytes en un archivo en algún lugar. ¿Pero qué archivo? ¿O hay algo más complicado?

Si ayuda, aquí está la sección de configuración de GRUB2 correspondiente a Windows:

menuentry 'Windows 7 (loader) (on /dev/sdb3)' --class windows --class os $menuentry_id_option 'osprober-chain-1F9948EB30A986A0' {
        insmod part_msdos 
        insmod ntfs
        set root='hd1,msdos3'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd1,msdos3 --hint-efi=hd1,msdos3 --hint-baremetal=ahci1,msdos3  1F9948EB30A986A0
        else
          search --no-floppy --fs-uuid --set=root 1F9948EB30A986A0
        fi
        chainloader +1
}

Nuevamente, lo que estoy buscando es, idealmente, una forma de solucionar esto sin reinstalar Windows. Si eso no es posible, entonces la reinstalación es un plan B aceptable, pero puedo manejarlo yo mismo.


Aquí hay una transcripción de mis sesiones de símbolo del sistema mientras se inicia en el entorno de reparación utilizando el DVD de instalación de Windows 7. He eliminado algunas líneas en blanco para facilitar la lectura. Lo siguiente es con todas las demás unidades desconectadas :

>bootrec /fixmbr
The operation completed successfully,

>bootrec /fixboot
The volume does not contain a recognized file system.
Please make sure that all required file system drivers are loaded and that the volume is not corrupted.

>bootrec /scanos
Scanning all disks for Windows installations.
Please wait, since this may take a while...
Successfully scanned Windows installations.
Total identified Windows installations: 1
[1]  C:\Windows
The operation completed successfully.

>bootrec /rebuildbcd
Scanning all disks for Windows installations.
Please wait, since this may take a while...
Successfully scanned Windows installations.
Total identified Windows installations: 1
[1]  C:\Windows
Add installation to boot list? Yes(Y)/No(N)/All(A):y
The volume does not contain a recognized file system.
Please make sure that all required file system drivers are loaded and that the volume is not corrupted.

>sfc /verifyonly /offwindir=C:\Windows /offbootdir=C:\
Beginning system scan.  This process will take some time.
Windows Resource Protection did not find any integrity violations.

>chkdsk C: /F
The type of the file system is NTFS.
Volume label is windows.
CHKDSK is verifying files (stage 1 of 3)...
  313344 file records processed.
File verification completed.
  1684 large file records processed.
  0 bad file records processed.
  2 EA records processed.
  158 reparse records processed.
CHKDSK is verifying indexes (stage 2 of 3)...
  416370 index entries processed.
Index verification completed.
  0 unindexed files scanned.
  0 unindexed files recovered.
CHKDSK is verifying security descriptors (stage 3 of 3)...
  313344 file SDs/SIDs processed.
Security descriptor verification completed.
  51514 data files processed.
CHKDSK is verifying Usn journal...
  35406088 USN bytes processed.
Usn Journal verification completed.
Windows has checked the file system and found no problems.
 207510871 KB total disk space.
 104134880 KB in 251224 files.
    137304 KB in 51514 indexes.
         0 KB in bad sectors.
    423075 KB in use by the system.
     65536 KB occupied by the log file.
 102815612 KB available on disk.
      4096 bytes in each allocation unit.
  51877717 total allocation units on disk.
  25703903 allocation units available on disk.
Failed to transfer logged messages to the event log with status 50.

>diskpart
Microsoft DiskPart version 6.1.7600
Copyright (C) 1999-2008 Microsoft Corporation.
On computer: MININT-P92LVUL
DISKPART>list disk
  Disk ###  Status         Size     Free     Dyn  Gpt
  --------  -------------  -------  -------  ---  ---
  Disk 0    Online          596 GB      0 B
DISKPART>select disk 0
Disk 0 is now the selected disk.
DISKPART>list part
  Partition ###  Type              Size     Offset 
  -------------  ----------------  -------  -------
  Partition 1    Primary             62 MB    31 KB
  Partition 2    Primary            398 GB    62 MB
  Partition 3    Primary            197 GB   398 GB

Cuando ejecuto los mismos comandos con todas las unidades conectadas, el resultado es el mismo, excepto que diskpartmuestra correctamente todas las unidades, y la letra de unidad para la partición de Windows en cuestión es en Dlugar de C(porque tengo una partición de datos NTFS en la unidad # 1 )

Me gustaría señalar que bootrec /fixmbrsobrescribe el MBR de la unidad # 2, reemplazando el MBR puesto allí por GRUB2. Cuando trato de arrancar desde ese disco, simplemente recibo el mensaje "Falta el sistema operativo" en lugar del error 0xc0000225. Luego puedo arrancar en Linux y usar grub-installpara volver a colocar el GRUB2 MBR, y luego elegir la opción de Windows en GRUB2 da 0xc0000225 nuevamente.


La clonación de Windows a menudo requiere manipulaciones de partición que interrumpen el proceso de arranque de Windows: Windows no arrancará si la partición se encuentra en una posición diferente en el disco que durante la instalación. Sería bueno usar sus hallazgos :)
Basilevs


@ ali786 bueno, prefiero reinstalar Windows que gastar $ 20 en una herramienta para solucionar el problema. Pero de lo contrario, esa sería una opción. (Sin embargo, ya miré ese sitio web mientras preparaba esta pregunta).
David Z

¿Qué tal si usa su disco de instalación y hace clic en Actualizar ahora en lugar de realizar una instalación limpia? Es una especie de reinstalación, pero conserva sus archivos.
Rsya Studios

1
@RsyaStudios El instalador gráfico no detecta mi instalación existente de Windows, así que no creo que pueda hacer eso.
David Z

Respuestas:


11

Dependiendo del método utilizado, ciertas cosas pueden cambiar en el progreso:

Los detalles de la partición : Use activeen diskpart para hacer que la partición se active nuevamente.

El sector de arranque : la herramienta bootsect se puede utilizar para restaurar el sector de arranque. (ej. bootsect /nt60 C:)

El UUID de la partición : al cambiar la posición y / o el tamaño de la partición, el UUID cambia; por lo tanto, el UUID inaccesible almacenado en el BCD no coincide con el UUID de su partición. Para solucionar esto, elimine y reconstruya el BCD de esta manera:

bcdedit /export C:\boot\bcd.backup
ren C:\boot\bcd C:\boot\bcd.old
bootrec /rebuildbcd

Este resultó ser el problema correcto (y la solución), pero su consejo sobre cómo configurar la partición activefue la clave real. Necesitaba activar la partición para bootrecsaber dónde escribir el BCD reconstruido. ¿Quizás podrías agregar eso a la respuesta? (No tuve que usar bootsect, como resultó.)
David Z

Actualicé la respuesta incrustando mi comentario; sí, los detalles de la partición fueron la pieza que falta aquí.
Tamara Wijsman

"ren C: \ boot \ bcd C: \ boot \ bcd.old" me dio un error. Debe ser "ren C: \ boot \ bcd bcd.old"
user4035

3

Es posible que haya causado el problema al reducir demasiado la partición de Windows.

Windows tiene algunos archivos inamovibles que un producto de terceros podría decidir mover. En el futuro, debe usar el Administrador de discos de Windows para cambiar el tamaño de sus particiones, ya que no romperá el disco. También es una buena idea apagar y vaciar la Papelera de reciclaje, deshabilitar el archivo de paginación y la hibernación para minimizar la cantidad de archivos especiales de Windows, y también ejecutar un desfragmentador que compacte todos los archivos hacia el comienzo del disco.

Dicho esto, puedes hacer Reparar Instalar para arreglar Windows 7 . Esta forma moderada de instalación reparará su Windows 7 actualmente instalado y preservará sus cuentas de usuario, datos, programas y controladores del sistema. El artículo vinculado describe el proceso en detalle con capturas de pantalla. Es posible que luego deba lidiar con alguna destrucción en el sector de arranque GRUB2.

Si Repair Install no funciona, Gparted había destruido su partición de Windows. Espero que tenga una copia de seguridad en este caso, ya que de lo contrario podría tener que recurrir a las utilidades de recuperación de datos .


Ah, bueno, eso fue intencional. Intenté usar Windows para cambiar el tamaño de la partición primero, después de vaciar la Papelera de reciclaje y desfragmentar (aunque olvidé deshabilitar archivos especiales), pero no fue capaz de reducir el tamaño de la partición tanto como lo necesitaba. Probaré la instalación de reparación y veré si funciona. De lo contrario, puedo montar la partición de Windows desde Linux y copiar cualquier archivo útil a otra partición, así no tendré que recurrir a la recuperación de datos.
David Z

Al mirarlo ahora, veo que una instalación de reparación solo se puede hacer desde Windows, por lo que eso no me ayuda.
David Z

Puede hacerlo utilizando un DVD / USB de Windows 7 SP1. Detalles en el artículo anterior.
harrymc

1
No, no puedo El artículo dice explícitamente (varias veces) que ya debe estar ejecutando Windows para realizar una instalación de reparación; Además, lo probé y no me deja usar la opción Actualizar cuando arranco desde un DVD.
David Z

¿Linux logra montar el disco, y puede ver el sistema de archivos y, especialmente, profundizar en la carpeta de Windows e incluso copiar archivos de él? ¿Se puede iniciar el DVD de Windows en DOS y ver el disco? Intente también desconectar cualquier dispositivo posible de la computadora.
harrymc

1

Tuve un problema similar (mismo código de error 0xc0000225) en mi computadora mientras intentaba actualizar a Windows 10

El problema vino de una partición EFI vacía que aún permanecía en una de mis unidades. En el arranque, la computadora encuentra 2 particiones EFI: una de mi sistema operativo principal y otra correspondiente a un sistema operativo antiguo que desinstalé hace meses (me mudé de mi primer disco duro a SSD y formateé todo)

Quizás también sea tu problema. Tengo 2 soluciones para ti, espero que funcione:

  • En su panel de control, administre su computadora, encuentre la partición EFI inútil y elimínela
  • Ejecute su computadora con el soporte de instalación de Windows (puede hacer una descargando el asistente en el sitio web de microsoft), ejecute el programa de instalación, la configuración avanzada y, cuando presente todos los volúmenes, busque la partición EFI y elimínela

También reinstalé Windows, pero si eliminas la partición EFI incorrecta, será suficiente

Desde entonces, no hay más problemas en el arranque, mi computadora podría instalar W10, etc.

Lo siento si no te doy los nombres exactos de las cosas en las que tienes que hacer clic, mi sistema operativo está en francés ^^


-1

Agregue una respuesta aquí porque esta es la página que se me mostró y la respuesta que necesitaba:

0xc0000225 también puede ser causado al deshabilitar el soporte APPI de ACPI en el BIOS (como se indica en este BIOS). Lo deshabilité mientras solucionaba los problemas de suspensión en Ubuntu, pero Windows en este caso requiere que esté habilitado.

Esto también provocó que la configuración cd / usb, la recuperación fallara con el mismo error, por lo que no se pudo hacer nada con Windows hasta que se habilitó.

0xc0000225 sucedió durante la actualización de Windows 10 Creators, pero no reinició en Windows hasta después de haber deshabilitado la configuración en el BIOS, por lo que parecía que fue causado por la actualización, ¡pero en realidad no lo fue! ¡Difícil!

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.