jueves, 13 de junio de 2013

BOOTMGR is missing: Solucion

Tratando de actualizar el firmware de un SSD me encontré con este problema; la tabla de particiones maestra del equipo se había "corronpido o desencuadrado" y salía ese error:
BOOTMGR is missing
Press CTRL + ALT + SUPR to reboot...
Relax, no es el fin del mundo. No conocía la solución a este problema, y buscando y rebuscando por internet no daba con una solución concreta. A continuación os pongo un pequeño tutorial con la solución.

1º Arrancar con el DVD de Windows 7.

2º Cuando arranque, seleccionar la opción "Reparar equipo".
Si como a mi, la tabla de particiones se os ha corrompido o desencuadrado, no os encontrará una instalación de Windows 7 para recuperar, por lo que saldrá un mensaje de error. 
De todos modos la autorreparación de Windows 7 falla más que una escopeta de feria, así que de todas todas os recomiendo seguir mi método. Es un poco más laborioso pero funciona seguro.

3º Cancelar el error y seleccionar la segunda opción que aparece. 
Volverá a dar error. Cancelar de nuevo y aparecerá un menú con varias opciones. Hay que seleccionar la última opción: Iniciar consola de símbolo de sistema.

4º Se abrirá una ventanita de MS-DOS. Ahora lo que tenéis que hacer depende de si se os ha descuadrado la tabla de particiones o vuestro problema es únicamente que os habéis cargado el sector de arranque.
Si el caso es que solo os habéis cargado el sector de arranque, ejecutar los siguientes comandos.

bootrec.exe /fixmbr
bootrec.exe /fixboot

exit

Reiniciáis y debería funcionaros todo bien de nuevo.
Si vuestro caso es que se os ha descuadrado la tabla de particiones, es un poco más complicado. En mi caso, tenía dos discos duros. El maestro, donde tenía instalado Windows (letra C) y uno secundario donde tenía instalados programas, juegos, etc. (letra D).
Comandos a ejecutar.

diskpart

Veréis que ahora os sale DISKPART> y a continuación podéis escribir.

list disk 

Con este comando os mostrará los discos que tenéis instalados actualmente. En mi caso, me decía que el disco duro almacén tenía la letra C, mientras que el del sistema operativo la D. Es decir, justo lo contrario. 
Veréis que cada disco tiene asignado un número. 
Por ejemplo:

Disco ### Estado Tamaño Libre Din. Gpt
-------- ---------- ------- ------- --- ---
Disco 0 En línea 4118 GB 0 B
Disco 1 En línea 8 GB 4002 B *
Para intercambiar las letras de unidad habría que hacer lo siguiente.

select disk 0
select partition 1
assign letter=R

Hasta aquí lo que hemos hecho es asignarle la letra R al disco duro almacén (que antes tenía la letra C). Seguimos.

select disk 1
select partition 1
assign letter=C

Ahora hemos puesto el disco del sistema operativo con la letra C. Por último queda devolverle la letra D al disco almacén.

select disk 0
select partition 1
assign letter=D

exit

Listo. Ahora toca hacer que el sistema lo reconozca y lo reescriba en el MBR, así que volvemos al comando bootrec.

bootrec /rebuildbcd

Esto debería detectar dónde tenemos windows 7 instalado. Si lo detecta preguntará si lo queremos usar como sistema de arranque. 
Hay que responder que sí.
En el caso de que no encuentre nada hay que rehacer el BCD escribiendo lo siguiente:

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

Ahora sí deberia detectaros la instalación de Windows 7. Seguimos.

bootrec /fixmbr
bootrec /fixboot

exit

Reiniciamos y debería de funcionar ya todo correctamente. 
No obstante puede ser que nuestro problema sea todavía más complicado (como fue mi caso) y el BOOTMGR haya desaparecido completamente. 
Si después de hacer todo lo anterior seguimos con el mismo error volvemos a arrancar desde el DVD de Windows y seguimos los mismos pasos hasta llegar de nuevo a la consola de MS-DOS.

Ahora hay que entrar en la unidad del DVD. Si tenemos por ejemplo 2 discos duros instalados, lo normal es que la letra del DVD sea la F. 
Si no, seguid probando alfabéticamente.

f:
copy bootmgr c:\
c:
attrib bootmgr +s +h +r
 

Recuperado el BOOTMGR, si aun no detecta el SO, usamos lo sisguiente:

bootrec /rebuildbcd   

bootrec /fixmbr
bootrec /fixboot

exit

Y reiniciamos. Ahora sí que sí tiene que arrancar
Espero que este pequeño tutorial os sirva. A mi me costó casi 4 horas de trabajo dar con la solución, pero siguiendo este tutorial no debería llevaros más de media hora solucionar vuestro problema.

No hay comentarios:

Publicar un comentario