Manejo del boot en Windows Vista
El sistema de Boot (arranque) de Windows Vista (beta2 y posteriores) tiene ya poco que ver con los sistemas tradicionales y el boot.ini que estábamos acostumbrados a manejar.
Recordemos un poco el sistema de XP (y sistemas basados en núcleo NT):
1) El sector de arranque de la partición (que se establece al formatear) tiene “hardcoded” -es decir, incorporado “a pelo” en su interior y no parametrizable- el primer archivo que se carga: NTLDR
2) En C:\ existen tres ficheros que son necesarios para la carga, esté donde esté situado el sistema operativo: NLTDR, NTDETECT.COM y BOOT.INI
3) El BOOT.INI es un archivo de parámetros. Archivo de texto que podemos tocar y modificar y que contiene los posibles sistemas operativos y sus lo calizaciones.
* La secuencia de arranque: la Bios carga el MBR del disco el cual contiene las particiones del disco y la marca de partición activa. El miniprograma del MBR, decide entonces cargar el primer sector (sector de Boot) de la partición marcada como activa. Esto carga el punto 1) anterior. Ese sector es un miniprograma que carga el archivo que tiene “harcoded” en su interior. En este caso el NTLDR. Es el responsable entre otra cosas de leer el BOOT.INI y si existe más de una entrada (más de un sistema operativo) nos mostrará un menú y nos permitirá seleccionar.
Hasta aquí todo sencillo. Si formateábamos C:\ siempre podíamos luego reconstruir a mano el BOOT.INI sin más que saber su sintaxis (ver un articulo mío titulado”Instalación de un Sistema Operativo.doc” publicado en http://www.multingles.net/jmt.htm para profundizar sobre el tema).
MODIFICACIONES INTRODUCIDAS POR WINDOWS VISTA
Windows Vista cambia drásticamente la filosofía de arranque.
1) Se modifica el sector de boot de la partición el cual contendrá ahora “harcoded” el nombre del primer fichero a cargar y ejecutar. En este caso BOOTMGR
2) En C:\ se graba oculto el archivo BOOTMGR
3) En C: se crea una carpeta llamada Boot cuyo contenido es:
Directory of C:\Boot
El archivo BCD.LOG esta oculto porque realmente es el que va a hacer con Windows Vista y los posibles sistemas operativos que tengamos, la función que hacia el BOOT.INI en sistemas anteriores (XP y previos).
¿QUE SUCEDE SI TENEMOS XP E INSTALAMOS VISTA?
Imaginemos que tenemos XP y otros sistemas operativos de núcleo NT instalados en nuestra máquina, y por tanto ya poseemos un BOOT.INI. Para nuestro ejemplo, pongamos que tenemos esto:
[boot loader]
timeout=10
default=multi(0)disk(0)rdisk(5)partition(1)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(5)partition(2)\WINDOWS=”Windows XP Professional x64 Edition [E]” /NOEXECUTE=OPTIN /FASTDETECT
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS=”Windows XP Professional x64 Edition” /NOEXECUTE=OPTIN /FASTDETECT
multi(0)disk(0)rdisk(4)partition(2)\WINDOWS=”Windows Server 2003, Standard [R]”/NOEXECUTE=OPTOUT /FASTDETECT
multi(0)disk(0)rdisk(4)partition(1)\WINDOWS=”Windows Server 2003, Enterprise” /FASTDETECT /PAE /NOEXECUTE=OPTOUT
multi(0)disk(0)rdisk(3)partition(1)\WINDOWS=”Microsoft Windows XP Professional [K]” /FASTDETECT /NOEXECUTE=OPTIN
multi(0)disk(0)rdisk(5)partition(1)\WINDOWS=”Microsoft Windows XP Professional [I]” /FASTDETECT /NOEXECUTE=OPTOUT
multi(0)disk(0)rdisk(6)partition(3)\WINDOWS=”Microsoft Windows XP Professional [Q]” /FASTDETECT
C:\BOOTSECT.DOS=”Previous Operating System”
Al instalar Windows Vista, nos machará el sector de Boot de la partición, nos grabará en C:\ el archivo BOOTMGR (ejecutable) y nos creará la carpeta Boot rellenándola con los archivos citados anteriormente.
El proceso de arranque, en este caso, nos mostrará un menú con 3 líneas:
Legacy (pre-Longhorn) Microsoft Windows Operating System
Microsoft Windows
Legacy (pre-Longhorn) Microsoft Windows Operating System
La primera línea, si la pulsamos, iniciará el proceso de carga de los antiguos sistemas operativos: es decir no sacará el menú clásico que está embebido en el BOOT.INI y podremos arrancar cualquiera de nuestros anteriores sistemas.
La segunda línea (existirá una de este estilo por cada Windows Vista instalado en nuestra máquina) nos permitirá arrancar directamente Windows Vista.
La última línea (si existiese), nos permitirá arrancar un viejo MSDOS en el sistema. Es decir, lo que realmente permite es arrancar el viejo BOOTSECT.DOS si existiese en nuestra máquina, correspondiente en el ejemplo que estoy poniendo, justo a la ultima línea del BOOT.INI.
POSIBLES PROBLEMAS SI INSTALAMOS XP/W2003 CON POSTERIORIDAD
El problema surge porque la instalación de XP / W2003 o cualquier sistema operativo anterior nos machacará el sector de Boot y por tanto ya no apuntará a los cargadores de Windows Vista.
Para recuperarlo, dentro de la carpeta Boot tenemos dos programas:
FIXFAT
FIXNTFS
Deberemos ejecutar el correspondiente a nuestro sistema de archivos (FAT O NTFS) que exista en C:\ (independientemente de cómo sea el sistema de archivos de las instalaciones de Windows). Ejecutándolo con /? os dará la sintaxis de cómo lanzarlo para recuperar el sector de Boot de Windows Vista.
Fuente: multingles.net/jmt.htm