Bienvenido! - Willkommen! - Welcome!

Bitácora Técnica de Tux&Cía., Santa Cruz de la Sierra, BO
Bitácora Central: Tux&Cía.
Bitácora de Información Avanzada: Tux&Cía.-Información
May the source be with you!

Tuesday, January 15, 2013

stop error 0xc000000e on RAID

======================
======================
I got 3 drives on my PC, both connected to a Intel ICH9R. 2 are RAID-1 which is Vista C: system drive. 1 is a JBOD D: drive.
Strangely, when I unplug D: drive, system will fail to boot on winload fail, status 0xc00000e.
There is no page file on D: drive, but I can't remove it via Disk Manager.
However, from disk manager, D: drive is Disk 0: and C: drive is Disk 1:
I did a bcdedit to change all reference to C: disk, but no luck
--------------------------------
Note: Please ensure that the DVD-ROM is the first booting device.
1. Please insert the Windows Vista DVD and reboot the computer.
2. When we are prompted to press a key to boot from the DVD, please press Enter or the space bar.
3. Choose your language settings, and then click Next.
4. Click Repair your computer.
5. Select the operating system you want to repair, and then click Next.
6. On the System Recovery Options menu, click Startup Repair. Startup Repair might prompt you to make choices as it tries to fix the problem, and if necessary, it might restart your computer as it makes repairs.
En pos del eterno upgrade, parece que muchas veces se termina haciendo complejo lo que antes no lo era y funcionaba bien. Así como GRUB en  su última encarnación abandonó su simple configuración mediante un sencillo archivo de texto para pasar a ser un conjunto de complicados archivos con scripts, en el Windowverse atrás quedaron esas épocas en las que el menú de arranque se definía desde un minimalista archivo de texto llamado boot.ini. Desde Windows Vista en adelante toda la información de arranque se guarda en una carpeta llamada boot ubicada en la unidad del sistema, y la información de los sistemas a bootear, es decir, los datos que antes figuraban cargados en el boot.ini de Windows XP y anteriores,  ahora residen codificados en el archivo binario oculto bcd.log, al cual por ende no podemos modificar exitosamente con un simple editor de texto.
image
Pero lo que es peor de todo este nuevo esquema es lo caprichoso que es el nuevo Windows Boot Manager. Mientras que clonar un Windows pre-Vista era una tarea bastante directa y sin sobresaltos, cuando clonamos una unidad que contiene un Windows Vista, 2008 o 7 y luego deseamos arrancar desde tal casi seguro nos vamos a encontrar con el famoso error con status 0xc000000e, y en particular con uno de los mensajes correspondientes al mismo que aprendí a odiar: The Boot Selection failed because a required device is inaccesible (puede estar también en el idioma de nuestra instalación), el cual nos apunta confusamente a un problema de controladores, llegando incluso al descarado extremo de no encontrar nuestra instalación de Windows desde la sugerida opción de reparación del DVD de instalación.
Pero el problema es más simple de lo que el nuevo boot manager de Windows nos quiere hacer creer, y es que simplemente ya no sabe donde está la partición que debe bootear. Para repararlo debemos ingresar a la línea de comandos desde la mencionada opción de recuperación del DVD de Windows 7 o Vista, y utilizar la única herramienta autorizada a modificar la configuración de arranque, bcdedit. ¿Alguien dijo que es una forma más de MS para joder a los que tienen un Windows trucho? Puede ser, aunque ciertamente también jode a quien quiera hacer un upgrade de disco rígido en un equipo de marca de los que no traen el DVD original del SO sino una partición o DVD de recuperación.
Lo primero que debemos hacer, una vez que llegamos a la línea de comandos desde la opción de recuperación, es ingresar el comando bcdedit sin ningún parámetro y observar la salida. Una instalación de Windows 7 normal y sin problemas debería entregar una salida como la siguiente:
image
Dentro de esta serie de líneas, las que les debemos prestar especial atención en este caso son las que dicen device y osdevice. Como ven, en el caso del ejemplo existen tres ocurrencias en total de las mismas, y vemos como en el caso del Administrador de arranque de Windows apuntan a la partición identificada como C:, mientras que en el Cargador de arranque de Windows lo hace a la D:. Esta situación, en la que cuando entramos desde el Entorno de Recuperación de Windows (Windows RE) vemos dos particiones distintas mientras que cuando ingresamos desde el sistema operativo en sí vemos sólo una, es otra característica nueva que existe desde Windows Vista, pero que recién en Windows 7 se volvió el esquema de instalación por defecto en todo disco sin formatear. En las ediciones Bussines, Enterprise y Ultimate de estos sistemas es posible separar los archivos de arranque del sistema en una pequeña partición al inicio del disco, llamada justamente partición de arranque, separada de la principal donde se contiene al resto del SO, y que vista desde el administrador de unidades de Windows nos figurará comoreservada por el sistema. Este es un escenario que requiere el sistema de cifrado Bitlocker de Windows para funcionar, y que también es útil para incluir herramientas de recuperación como Windows RE y hacer un poco más difícil la infección del sistema por parte de ciertos tipos de malware que sólo están preparados para infectar la unidad del sistema principal. Además, este es el caso del ejemplo de la imagen; lo que hay que tener en cuenta es que para Windows 7 en particular a la partición de arranque no se le asigna una letra de unidad cuando el SO está en línea. Por lo que la partición D: que vemos desde el entorno de recuperación es en realidad nuestro disco C:, mientras que la de arranque figura como C: en este caso. Si no existe partición de arranque y todos los archivos del sistema residen en la misma partición principal, sólo deberíamos ver la letra correspondiente a la misma en todos los casos.
Ahora bien, ¿que es lo que pasa en esta configuración de arranque cuando obtenemos el status code 0xc000000e y nos dice que “el arranque falló porque un dispositivo requerido es inaccesible”? Normalmente veremos que en las variables device y osdevice habrá un valor identificado como unknown, lo que equivale a decir que el administrador de arranqué de Windows olvidó donde estaba la partición que debía arrancar. Para solucionarlo primero debemos saber cuáles son las letras asignadas a nuestras particiones de arranque y/o de sistema desde el entorno de recuperación, lo cual lo podemos hacer invocando al Bloc de Notas, para lo cual tecleamos notepad desde la línea de comandos de Windows RE y luego elegimos la opción Guardar; desde ahí podemos ver todas las unidades del sistema y cuáles son las letras que les fueron asignadas. Luego debemos tener en cuenta que en el Administrador de arranque de Windows deberá ir la letra de la partición de arranque, mientras que en el Cargador de arranque de Windows la del sistema, y en caso de existir sólo la última, por supuesto, la misma en todos los casos.
Estos valores debemos corregirlos ingresándolos a través de la herramienta bcdedit, de la siguiente forma:
bcdedit /set {identificador-del-SO} device partition=X:
En el ejemplo de la imagen vemos que el identificador de nuestro Windows 7 es bootmgr para la partición de arranque, y como ya sabemos que la misma está identificada como C: desde el entorno de recuperación, deberíamos ingresar:
bcdedit /set {bootmgr} device partition=C:
Siguiendo con el ejemplo, para luego corregir los valores del Cargador de arranque de Windows deberemos ingresar:
bcdedit /set {default} device partition=D:
bcdedit /set {default} osdevice partition=D:
Hecho esto sólo resta reiniciar y observar si el sistema levanta como corresponde.
============================
I have gone through replacing a System Reserved partition. This assumes a normal install and no other partition modifications have been madeIt will not work on a UEFI install......If you choose not to replace the System Reserved partition, which is probably the best choice, you can make the OS partition active and do the Startup Repair, and it may take several times (2 or 3) to make it work correctly, and running Startup Repair 3 times will repair the Recovery F8 options capability.

But if you want to replace the System Reserved Partition, you can only have 4 primary partitions or 3 primary partitions and one Extended partition in Windows 7. So, if you already have those, you will not be able to add another. Any questions, ask before you start.

In Diskpart, you can use the first 3 letters instead of typing out the entire word. For instance, par can be used instead of partition

A command window can be opened from the Select Language page of the Install/Repair. Hit Shift+F10 to open the window and type Diskpart.

With Diskpart open type the following:

list disk

select disk 0
 < this will depend on which disk is your boot disk from above.

lis par

Sel par 1
 < this will probably be your OS partition if you deleted the System Reserved partition, but make sure.

detail par

Now look at the results. If the partition is active, it will indicate it as such here. (Active: Yes)

If you do not want to recreate the System reserved partition, you can make the partition active by:

active <** See Info below

Then check it again to make sure.

exit
exit


to close the Command window and continue with the repair.

**If you want to replace the System Reserved partition, then do not set the other partition as active. Instead follow these instructions to replace the partition and set it to active, then continue with the repair, and it will take 2 or 3 repair attempts with reboots between.

Note: this procedure worked fine on my system, but replacing a partition might lead to the loss of the OS partition if it was mistakenly overwritten, this is why I do not give the new partition a size.

With Diskpart already open, and using the results from the partition listing above (number and type), enter the following.

create par primary offset=1024

If your drive had no space unallocated, except for the deleted System Reserved Partition, you would not need the Offset. But without the offset, the partition will be put in unallocated space behind the other partitions.

format fs=ntfs label="System Reserved" quick

Active


You can now check the partitions again if you like, but note the partition for the Reserved partition may not show as Partition 1, so don't worry.

When you are ready, type exit twice to leave the command prompt and continue with the repair.

No comments: