Aparecen los mensajes de error Archivo Boot.ini no válido o No se puede iniciar Windows al iniciar el equipo
Al encender un equipo con Windows XP, Windows 2000 o Windows Server 2003 pueden aparecer, juntos o por separado, estos dos mensajes, y el sistema no llega a arrancar:
- Archivo Boot.ini no válido, a menudo seguido de «Iniciando desde C:\Windows\».
- No se ha iniciado Windows porque el siguiente archivo falta o está dañado: <raíz de Windows>\system32\hal.dll.
Aunque el segundo mensaje hable de hal.dll, casi nunca es ese archivo el que falla: Windows no lo encuentra porque el archivo Boot.ini le está indicando un disco o una partición equivocados. La solución es reconstruir el Boot.ini.
Qué es el archivo Boot.ini
Boot.ini es un pequeño archivo de texto, oculto y de sistema, que está en la raíz de la unidad de arranque (normalmente C:\boot.ini). El cargador de Windows XP, NTLDR, lo lee al encender el equipo para saber en qué disco y en qué partición está instalado Windows y qué opciones mostrar en el menú de inicio. Un Boot.ini típico tiene este aspecto:
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /fastdetect
La parte importante es la ruta multi(0)disk(0)rdisk(0)partition(1): rdisk indica el disco físico (empezando por 0) y partition la partición dentro de ese disco (empezando por 1). Si esa ruta no apunta a donde está realmente la carpeta WINDOWS, aparecen los errores anteriores.
Causas habituales
- El archivo
Boot.inise ha borrado o se ha dañado, por ejemplo tras un apagado brusco o un error de disco. - Se ha creado, borrado o redimensionado una partición, o se ha añadido otro disco, y la numeración ha cambiado: Windows sigue en su sitio, pero
Boot.iniapunta a la partición equivocada. - Se ha editado el archivo a mano o con un programa de arranque múltiple y ha quedado una entrada incorrecta.
- Una actualización o una instalación en paralelo de otra versión de Windows ha reescrito el archivo.
Solución: reconstruir Boot.ini desde la Consola de recuperación
Necesitas el CD de instalación de Windows XP (o el de la versión que tengas instalada) y la contraseña de la cuenta Administrador, si tiene una.
- Configura la BIOS para que el equipo arranque desde la unidad de CD o DVD.
- Introduce el CD de Windows XP y reinicia. Cuando aparezca «Presione cualquier tecla para iniciar desde el CD», pulsa una tecla.
- En la pantalla de bienvenida del Programa de instalación, pulsa R para abrir la Consola de recuperación.
- Si hay varias instalaciones de Windows, escribe el número de la que quieres reparar (normalmente 1) y pulsa Intro.
- Escribe la contraseña del Administrador y pulsa Intro. Si no tiene contraseña, pulsa Intro directamente.
- Para ver qué contiene ahora el
Boot.ini, escribebootcfg /listy pulsa Intro. - Escribe
bootcfg /rebuildy pulsa Intro. El comando busca en los discos las instalaciones de Windows XP, 2000 y NT y te las muestra una a una. - Para cada instalación que quieras recuperar:
- Cuando pregunte si quieres agregarla a la lista de arranque, responde S (sí).
- Cuando pida el identificador de carga, escribe el nombre que quieres ver en el menú de inicio, por ejemplo
Microsoft Windows XP Professional. - Cuando pida las opciones de carga del sistema operativo, escribe
/fastdetect.
- Escribe
fixbooty pulsa Intro; confirma con S. Esto reescribe el sector de arranque de la partición del sistema. - Escribe
exitpara salir y reiniciar. Retira el CD para que el equipo arranque desde el disco duro.
Si bootcfg /rebuild no encuentra ninguna instalación, el problema no está en Boot.ini: puede que la partición esté dañada o que la carpeta de Windows haya desaparecido. En ese caso conviene ejecutar chkdsk C: /r desde la misma consola antes de seguir.
Alternativa: corregir Boot.ini a mano
Si sabes en qué disco y partición está Windows, también puedes corregir el archivo desde otro sistema, por ejemplo conectando el disco a otro equipo o arrancando con un sistema en vivo:
- Abre la raíz de la unidad de arranque y muestra los archivos ocultos y protegidos del sistema.
- Haz una copia de
boot.iniantes de tocarlo. - Quítale el atributo de solo lectura, ábrelo con el Bloc de notas y ajusta los valores de
rdisk()ypartition()en las líneasdefault=y en la de[operating systems], tomando como modelo el ejemplo de arriba. - Guarda el archivo y vuelve a dejarlo como de solo lectura.
¿Y en Windows 7, 10 u 11?
Desde Windows Vista, Windows ya no usa Boot.ini ni NTLDR: el arranque lo gestiona BOOTMGR con un almacén de configuración llamado BCD. Si en un sistema moderno ves errores como «BOOTMGR is missing» o «El archivo \Boot\BCD falta o contiene errores», la reparación se hace desde el Entorno de recuperación de Windows, abriendo el Símbolo del sistema y usando bootrec /rebuildbcd, no con bootcfg.