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-------------|
( boot
y home
son 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 diskpart
muestra correctamente todas las unidades, y la letra de unidad para la partición de Windows en cuestión es en D
lugar de C
(porque tengo una partición de datos NTFS en la unidad # 1 )
Me gustaría señalar que bootrec /fixmbr
sobrescribe 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-install
para volver a colocar el GRUB2 MBR, y luego elegir la opción de Windows en GRUB2 da 0xc0000225 nuevamente.