03 febrero, 2014

Recuperación de arranque en Windows 7 [BCD Rebuild, BOOTMGR, BOOT, NTLDR]

Hoy comentaré algunas de las formas formas más eficaces de poder recuperar una secuencia de inicio y carga de arranque corrupto o dañado de Windows 7.
Es decir cuando se nos presentan fallos por estar corruptos algunos ficheros de arranque ya sean, MBR, NTLDR, Bootmgr, etc... al encender nuestro PC nos encontraremos con mensajes del tipo: BOOTMGR is missing..., Falta NTLDR o mensajes similares.
Tanto NTLDR (para Windows XP) como BOOTMGR (para Windows Vista en adelante) son gestores de inicio o cargadores de sistemas Windows.

Para intentar solucionar este problema:

[1] - Podremos usar la forma sencilla y automática de Windows 7 que sería: Iniciar el DVDLive de instalación de Windows 7, una vez se nos arranque y se nos muestre la primera ventana del asistente de instalación le daríamos en la opción "Reparar equipo" (situada generalmente en la parte inferior-izquierda). Y a partir de ahí, usar la opción de "Reparación de inicio".
Esta opción nos solucionará principalmente fallos cuando se daña el fichero NTLDR (NTLoaDeR).

Otra opción sería hacerlo de forma manual y que restaurar los propios ficheros en cuestión corruptos cogiendo una copia del DVDLive de instalación de Windows 7 un Windows PE (Entorno de preinstalación).

Ahora explicaré varias posibles soluciones, aunque esto depende también de cada caso que tengamos.

[2.1] - En un Windows RE (Entorno de recuperación), ejecutamos el comando diskpart (Administrador de discos en Windows "diskmgr.msc").
Tendremos que seleccionar el disco en el que tenemos nuestro arranque de OS de Windows 7, esto dependerá de cada uno y de las particiones y/o discos que se tengas instalados en el equipo, pondré un ejemplo típico y común, (cuyo caso sería un solo disco duro y una sola partición).

En esta zona por defecto en un mismo disco en estos casos las letras asignadas a cada partición o unidad suelen distribuirse de la siguiente forma:
X: Unidad creada para el sistema de restauración de imágenes de lo anterior seleccionado, esta contienen principalmente los binarios que lanzan los asistentes para la restauración del sistema así como otros para las reparaciones automáticas de arranque que nos ofrece Microsoft en un WindowsRE, entre otras tareas.
C: La partición "reservada para el sistema" de unos aprox. 100/200 MB, la cual contiene el boot de arranque y otros ficheros relacionados.
D: La partición donde está instalado Windows y los datos, esta es la que estaría montada como C:\ cuando corremos un sistema operativo Windows.
E: Unidad asignada al DVD o USB de instalación de Windows (Windows PE y Windows RE).

Bootrec será la utilidad principal para poder restablecer el arranque de Windows. Tiene varios modificadores de los cuales son (según su ayuda):
/fixmbr: Escribe el registro de arranque maestro de la partición del sistema con el registro de arranque maestro compatible con Windows 7. Esta operación no sobrescribe la tabla de particiones existente.
/fixboot: Escribe un nuevo sector de arranque en la partición del sistema con el sector de arranque comptible con Windows 7.
/rebuildbcd y /scanos: Examina todos los discos en busca de instalaciones compatibles con Windows 7 permite al usuario elegir la que desee agregar al almacén de configuración de arranque.

En que partición se tienen que realizar las acciones para recuperar el arranque de Windows?.
Lógicamente en la partición en la que tengamos dichos ficheros dañados, que obviamente será la partición reservada por el sistema operativo para su arranque, en este caso (y por defecto como ya se mencionó anteriormente) C:.
c:
diskpart
list disk
select disk=0
list partition
select partition=1
active
exit
Con esto listamos, seleccionamos el disco donde se albergue Windows 7, listamos las particiones y seleccionamos la partición donde esté instalada Windows7, la marcamos como activa y salimos.
A continuación, ejecutamos la siguiente secuencia de comandos:
bootrec /fixmbr
bootrec /fixboot
bootrec /rebuildbcd
exit
Esto nos reparará el MBR (Master Boot Record), la secuencia de inicio BOOT y nos reconstruirá la base de datos de arranque BCD (Boot Configuration Data).
Reiniciamos y probamos si con esto conseguimos solucionar el problema de arranque y Windows nos arranque correctamente.

[2.2] - Si el error persiste y no se hubiese solucionado nuestro problema habría que reconstruir de nuevo el BCD pero de otra forma, hacerlo "desde cero" sin que sobrescriba ningún fichero ya existente.
Para ello, en la consola de recuperación escribimos:
bcdedit /export c:\bcd_backup
c:
cd boot
attrib bcd -s -h -r
ren c:\boot\bcd bcd.xxx
bootrec /rebuildbcd
bootrec /fixmbr
bootrec /fixboot
exit
Con esto lo que haremos es hacer un respaldo de la base de datos boot exportándola a C:. Después simplemente entramos en la carpeta "Boot" que está situada en la raíz del sistema y borramos los atributos (de archivo del Sistema, Oculto y Solo lectura) del fichero bcd en cuestión.
Por último reconstruimos de nuevo la BCD, en este caso desde cero sin que tome referencia de ninguna otra y reparamos el MBR y el BOOT como los pasos anteriores y reiniciamos a ver si ya se corrigió el problema de arranque.

[2.3] - Si seguimos sin poder repararlo como última instancia tendríamos que sobrescribir el fichero BOOTMGR (situado en el raiz del sistema, C:) .

Situados en la consola de recuperación, buscaremos y entraremos a la letra de unidad asignada a la lectora DVD o la unidad asignada al dispositivo donde tengamos la instalación de Windows 7. En mi caso, fue la la letra E: pero podría a ver sido otra, es cuestión de ir probando en un orden alfabético (D:, E:, F:, G:, H:, etc.).
e:
copy bootmgr c:\
c:
attrib bootmgr +s +h +r
bootrec /rebuildbcd
bootrec /fixmbr
bootrec /fixboot
exit
Como vemos, copiamos el bootmgr del DVD (en este caso) al disco raíz, nos vamos a nuestro disco raíz (por defecto C:) y establecemos los atributos (de archivo de Sistema, Oculto y Solo lectura) al fichero bootmgr que copiáramos anteriormente.
Ahora bien, en el momento de reconstruir la base de datos de arranque de nuevo si no nos detecta el OS, deberemos hacer lo del paso 2.1, seleccionar la partición correcta y marcarla como activa. Después de eso ya podremos reconstruir sin problemas la BCD y seguir con la reparación de fixmbr y fixboot.

Ahora salimos de la consola y reiniciamos y con estos todos casos anteriores y planteados en este artículo deberíamos solucionar gran parte de errores relacionados con fallos de arranque o carga de un sistema operativo Windows 7.

NOTA: En el caso de que nos pida otro fichero de arranque el cual, se me pudo olvidar reflejar en este post y sabemos que lo tenemos en el DVD de instalación de Windows 7, sería el mismo procedimiento que el último paso 2.3. Es decir coger ese fichero copiarlo y pegarlo en su ubicación original del disco raíz, reconstruir la base de datos de arranque (BDC) y reparar el MBR y el BOOT.

Saludos!

32 Comentarios :

Ivo Muñoz Contreras dijo...

Siempre me manda un error de BCD... Le tengo mucha fé al paso 2.3 , pero al copiar el bootmgr me manda acceso denegado... que debo hacer?

Adrián Lois dijo...

Hola @IvoMuñoz, eso es por tema de permisos pero desde WindowsRE ya accedes con un usuario administrador de sistema con altos privilegios, nunca me pasó eso desde este tipo de entornos...

En la misma consola prueba a poner "net user" a ver que usuarios tienes disponibles??

crishtian balestra dijo...

Luego de navegar y probar con los pasos que brindaron logre superar mi percance gracias por el gran apporte

Adrián Lois dijo...

Me alegro que te fuese de utilidad @cristian. }:-)

Angelo Yepes dijo...

Hermano me salvaste la vida eres el mejor a partir del 2do paso me funciono

Cesar Justiniano dijo...

Al hacer click en reparar equipo, no pasa nada. Se queda solo el puntero del mouse en pantalla. De este modo no puedo acceder a la consola de recuperación ni a las otras opciones.
Así mismo, intento entrar al submenu de Windows apretando F8 antes del booteo y tampoco me deja hacer nada, directamente me arroja el error file boot bcd. Alguna idea?

Adrián Lois dijo...

Hola @Cesar justiniano,
Introduce el cd de arranque de Windows, entra en la command promt de recuperación y prueba con: Bootrec /rebuildbcd

Igualmente lee completamente la entrada del blog esta parte la incluyo en la entrada.

Saludos.

Ricardo Gonzalez Rodiguez dijo...

Muchas gracias! Me ayudaste a sacar un pendiente.

Cachin dijo...

Yo no puedo ingresar con el DVD no me lo toma, cuando pongo reparar vuelve a lo mismo y da 2 opcciones reparar o iniciar windows, pero vuelve.
Estaba pensando sacar el disco rigido y conectarlo en otra pc y hacerle un chkdsk y si no funciona reemplazar los archivos de inicio, pero no se como se hace ese paso.

Adrián Lois dijo...

@Cachin,
- Primero de nada que tipo de error te aparece para no poder iniciar Windows con normalidad?.

- Si el LiveDVD de Windows no te inicia, es por que desde la BIOS no se está booteando, a parte de verificar que está en primera posición verifica que "los medios extraibles/desmontables estén habilitados".

- El chkdsk en estos problemas no solucionará nada.
- Los pasos para restablecer el arranque de inicio los tienes en post.

Saludos.

Cachin dijo...

Ya esta habilitado para que arranque del dvd...lo configure en la bios, esta como primero y el error que aparece es error 0×0000000000e dice que se alterando o corrumpieron archivos del arranque de windows.

Adrián Lois dijo...

@Cachin, tratándose de ese tipo de error, en ese caso puede ser de utilidad chkdsk como ya dijiste.
Prueba a iniciar Windows a modo a prueba de fallos (f8).
Saludos.

Cachin dijo...

Ya eh probado todas las opciones y no unía en ningún modo, vuelve a la opción de reparar e iniciar Windows! Y no hay caso.

Daniel Leon dijo...

Thanks, this info is saved my hdd.

Eduardo Gomez dijo...

Saludos Adrian. Tengo una duda amigo. Al entrar en simbolo de sistema en Windows RE, las letras asignadas a las unidades son las siguientes: X=Unidad con el dvd de Windows, C=La partición de 100 Mb que se crea en el HDD al instalar Windows y D= La partición donde está instalado Windows. Para efectos de este post, ¿como quedaría la ejecución de los comandos en los pasos 2.1, 2.2 y 2.3 según esta asignación de letras. Gracias de antemano por tu aporte.

Adrián Lois dijo...

Buenas Eduardo,

Gracias y buen apunte que haces sobre las letras de asignación en estos entornos (WinPE y WinRE). Actualizo el artículo con eso para completarlo aún más en detalle.

Y al tratarte del escenario que describes (que casualmente es el mismo que el que está en el artículo), se trataría de la letra C:, ya que es donde están los ficheros de arranque del sistema.

Saludos!

FABIAN HENAO CORDOBA dijo...

Hola, si quiero hacer boot desde una usb cómo sería el comando en vez de "bcdedit /export c:\bcd_backup
c:
cd boot
attrib bcd -s -h -r
ren c:\boot\bcd bcd.xxx
bootrec /rebuildbcd
bootrec /fixmbr
bootrec /fixboot
exit"

Adrián Lois dijo...

Hola Fabian, no entiendo a lo que te refieres, concrétame un poco más.
Saludos.

Unknown dijo...

Muchas Gracias , me soluciono mi problema. Felicidades por ayudar a personas como yo.

Johan Diaz dijo...

Amigo Adrian Lois... trato de hacer lo que publicas en el post pero me pasa es lo siguiente no puedo acceder a CMD es decir no tengo accesos a los comandos y cuando trato de bootear cds o unidades usb simplemente llega hasta cierto punto y se reinicia, hace los ciclos repetitivos... saludos

Johan Diaz dijo...

podria colocar mi disco duro en otra pc como esclavo y podria utilizar los comandos???

Adrián Lois dijo...

Hola @Johan Diaz, quizás tu problema venga por otro causa, fallo del livedvd que usas?, fallo hardware del equipo? probaste a bootear otro sistema operativo o similar? pueda que el fallo venga de más atrás.

Un saludo.

shakiller procraft dijo...

en el 2.1 en ninguna de las particiones cuando pongo active me pone que no son mbr

chava64mx dijo...

Hola esto aplicaría cuando, por daño en la mother tengo que cambiar de mother y procesador y requiero salvar y recargar sesiones, programas, etc?. Ya que intento los pasos 2.2 y solo he conseguido que reinicie y muestre el menu de reinicio a prueba de fallos etc. Y se reinicia.

anibal juan vellacich dijo...

¡Me funciono de maravillas esto, millon de gracias!!!!!!!

Unknown dijo...

En el paso 2.3 sale acceso denegado,que hago?

Adrián Lois dijo...

Lee el primer comentario de este artículo.
Saludos!

Miguel Abellán Martínez dijo...

Por mucho que hago no encuentra la instalación de windows, ni cuando arrancas y antes de darle a consola, te salta el aviso de las instalaciones hechas, no sale ningúna.

Unknown dijo...

Ya puse como super administrador pero me sigue diciendo permiso denegado que puedo hacer en ese aspecto

Kelvin Sanchez dijo...

Chicos yo puedo ayudarlos solo diganme su problema y respondo en menos de 10min, incluso doy mi numero temporal para resolver dudas, tenia este problema de que me daba acceso denegado y lo resolví solo borrando el archivo en :c y el otro problema era archivo no encontrado en BCD y le cambie el nombre del BCD.old al BCD y listo, escriban por acá o al nro y explico como.

Unknown dijo...

kelvin comenta las dos formas de poder solucionar.

Jose Jurado dijo...

Funciona perfectamente Gracias

Publicar un comentario

Entradas Relacionadas