¿Cómo puedo realizar un arranque dual en Windows 7 y Ubuntu 11.10 cifrados con TrueCrypt cuando ambos están instalados por separado en diferentes unidades físicas?

¿Cómo puedo realizar un arranque dual en Windows 7 y Ubuntu 11.10 cifrados con TrueCrypt cuando ambos están instalados por separado en diferentes unidades físicas?

¿Cómo puedo realizar un arranque dual en Windows 7 y Ubuntu 11.10 cifrados con TrueCrypt cuando ambos están instalados por separado en diferentes unidades físicas?

Tengo dos discos duros. hd0 tiene una instalación de Windows 7 cifrada con TrueCrypt con el gestor de arranque TrueCrypt. hd1 tiene una instalación de Ubuntu 11.10 con el gestor de arranque grub2.

La salida de fdisk -les la siguiente:

  Device Boot      Start         End      Blocks   Id  System   
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda2          206848   976771071   488282112    7  HPFS/NTFS/exFAT

  Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *        2048   968517631   484257792   83  Linux
/dev/sdb2       968519678   976771071     4125697    5  Extended
/dev/sdb5       968519680   976771071     4125696   82  Linux swap / Solaris

Puedo iniciar con éxito en cualquiera de los sistemas operativos cambiando el orden de inicio en el BIOS, pero no quiero tener que hacerlo repetidamente. Mis opciones son:

  • Agregue el gestor de arranque TrueCrypt a la configuración de grub2 y cárguelo en cadena con grub2.
  • Inicie en el gestor de arranque TrueCrypt y, cuando presione Escape para salir de la entrada de contraseña, inicie en grub2.

He tenido dificultades con la opción 1, ya que al presionar escape TrueCrypt no encuentra otra partición de arranque. Según tengo entendido, debería buscar otros discos de arranque.

También he tenido dificultades con la opción 2, y con la siguiente dentro /etc/grub.d/40_custom(y luego ejecutando update-grub2)...

menuentry "Windows 7" {
set root=(hd0,1)
chainloader +1
}

(También lo intenté root=(hd0,0)y root=(hd0,2))

... Recibo errores sin dicha partición. También he leído varias fuentes que sugieren que no es posible hacer esto con grub2 sin montar e iniciar en el disco de rescate ISO TrueCrypt antes de iniciar Windows. ¿Es esto necesario?

¿Qué estoy haciendo mal?

Respuesta1

Puedo ayudarte con una solución alternativa, es bastante complicado, así que asegúrate de entenderlo.

Primero: Copia de seguridad de todo Segundo: Requiere dos discos físicos, con solo uno no pude hacerlo

Vaya a la parte complicada, el proceso de orden de secuencia de arranque:

  • El BIOS arrancará desde un HDD (normalmente el primero)
  • Así que pon ahí el gestor de arranque GRUB2.
  • Dicho GRUB le permitirá arrancar desde particiones en el primer disco o arrancar desde el segundo disco (esa es la parte complicada)
  • Si desea iniciar Linux, simplemente inicie desde otra partición en el mismo disco.
  • Si desea iniciar TrueCrypt Bootloader, simplemente dígale que inicie desde el segundo disco, no desde una partición.

Teniendo esto en cuenta, ¿cómo archivarlo? Fácil, sigue estos pasos:

  • Coloque solo un disco duro en blanco en la PC
  • Configure el BIOS para arrancar desde él (sólo por este momento)
  • Instale Windows y TrueCrypt en él.
  • Dígale a TrueCrypt que cifre todo (solo hay un disco duro presente)
  • Reinicie, pruebe los arranques de Windows
  • Apagar correctamente
  • Agregar un segundo disco
  • Cree algunas particiones en ese segundo disco duro
  • Uno para /boot (donde irá GRUB2)
  • El resto como desees para Ubuntu/, SWAP, etc...
  • Configure GRUB2 para permitir el arranque de Ubuntu y cargar en cadena el segundo disco duro completo (tenga cuidado de no indicarle ninguna partición, solo el disco duro completo)
  • Reiniciar
  • Difícil: dígale al BIOS que arranque desde el segundo disco duro (como usted dice que le permite) desde ahora
  • Pruebe que el arranque ejecute GRUB2
  • Pruebe que la cadena GRUB2 se cargue correctamente en el primer gestor de arranque HDD (cargador TrueCrypt), pero no ponga una frase de contraseña ni permita que Windows arranque, simplemente reinicie cuando se le solicite la contraseña.
  • Reinicie si no lo ha hecho... y pruebe la opción GRUB2 Linux... no arrancará ya que Ubuntu aún no está instalado, pero no cargará TrueCrypt, así verá que funciona
  • Instale Linux con mucho cuidado... no permita que cambie ninguna tabla de particiones... simplemente instálelo en el segundo disco usando las particiones existentes... y cuando le solicite el gestor de arranque, dígale que instale Grub o Lilo, etc. en la partición de Linux, no en HDD MBR.

Con esto obtendrás este esquema:

  • HDD0 - MBR con TrueCrypt, El resto para Windows
  • HDD1 - MBR y partición /boot con GRUB2, una partición más para / (tu Ubuntu) dentro de la cual habrá otro cargador Grub, Lilo o Grub2 en /boot, particiones adicionales como desees

El truco es:

  • Dígale a TrueTrypt que cifre, ya que sabe, un disco duro completo con su propio gestor de arranque.
  • Arranque GRUB2 desde otro disco duro diferente (el BIOS debe poder arrancar desde el segundo disco duro)

Entonces al arrancar esto es lo que sucede:

  • BIOS lee su configuración en CMOS
  • BIOS ve para arrancar desde el segundo HDD
  • BIOS lee el segundo disco duro MBR
  • GRUB2 está cargado
  • GRUB2 muestra el menú: Arrancar Windows / Arrancar Ubuntu
  • Si selecciona Ubuntu, entonces GRUB2 cargará otro Grub, lilo, etc. dentro de la partición raíz de Ubuntu, ese otro gestor de arranque cargará su Linux Ubuntu.
  • Si selecciona Windows, GRUB2 se cargará en cadena en el primer disco duro, actuando como si el BIOS arrancara desde el primer disco duro.

De este modo:

  • TrueCrypt no sabe nada sobre el segundo disco para arrancar, no depende de él
  • GRUB2 y Linux no sobrescribirán ni tocarán nada en ese primer disco
  • El BIOS arrancará desde el segundo disco duro

Espero que sea lo suficientemente claro.

Cosas en mente para archivar esto:

  • Primero, haz algunas pruebas con un VirtualBOX antes de hacerlo en una máquina física real, para que te familiarices con el proceso.
  • En segundo lugar, toma nota en un papel de los pasos que vas siguiendo a medida que los realizas, para no olvidarte de nada.

Ahora bien, debo decir que se puede hacer sin abrir la PC... con ambos discos siempre conectados.

Imagina esto:

  • HDD0 sin partición
  • HDD1 sin partición
  • Instalar Windows sólo en HDD0 de forma normal, pero no particionar HDD1
  • Instale TrueCrypt y diga que cifre HDD0 completo, no hará nada con HDD1
  • Prueba todo va correctamente
  • Arranque desde un LiveCD como SystemRescueCD, cree particiones en HDD1
  • Asegúrese de crear una partición dedicada para /boot solo para GRUB2, no relacionada con su Linux, con 512 MB también podrá colocar SystemRescueCD.iso en él y configurar GRUB2 para que realice un bucle de carga desde el archivo iso (consulte la web SystemRescueCD para eso)
  • Instale GRUB2 en HDD1 MBR y HDD1/partición de arranque
  • Configure grub.cfg de dicho GRUB2 para arrancar desde su raíz de Linux en HDD1 y una carga en cadena en HDD0 (no en ninguna partición en HDD0)
  • Pruebe que GRUB2 arranca todas las opciones correctamente, solo pruebe que la carga de la cadena sea correcta... cuando inicie Windows y TrueCrypt le pedirá una frase de contraseña, simplemente reinicie, no pierda tiempo para iniciar Windows.
  • Instale Ubuntu en la partición raíz HDD1 y dígale que instale su propio grub en la partición raíz HDD1 donde van sus archivos principales de Linux Ubuntu para que no toque la partición HDD1/boot en absoluto.

¡¡¡Ese es el truco!!!

La idea: usar otro medio para crear el menú de inicio real donde puedes seleccionar qué iniciar.

Personalmente en mi netbook tengo esta cadena:

  • /boot con menú GRUB2 con opciones para arrancar: WindowsVista, Windows7, Linux Ubuntu 32bits, Linux Ubuntu 64Bits, SystemRescueCD.iso, memtext86+, floppy, ... etc
  • Si selecciono Linux Ubuntu 32Bits... cargará otro GRUB2 diferente con opciones: Volver (arrancar desde HDD MBR), Kernel X, depuración de Kernel X, Kernel Y, depuración de Kernel Y, etc...
  • Si selecciono Linux Ubuntu 64Bits... cargará otro GRUB2 diferente con opciones: Volver (arrancar desde HDD MBR), Kernel X, depuración de Kernel X, Kernel Y, depuración de Kernel Y, etc...

Esta es la idea... tener en el proceso de arranque más de un GRUB!!

¿Por qué más de uno? Fácil... en caso de que el sistema actualice el Grub no toca el que uso como menú de arranque, simple y efectivo.

Ahora, el problema de TrueCrypt... si cifra la partición del sistema, debe estar en el MBR, no le permite de otra manera (excepto RecoveryCD).

Entonces, si TrueTrypt cifra una partición del sistema de Windows, será mejor dejar el disco lleno.

¡Ey! Linux también se puede instalar en el mismo disco que Windows para mejorar el rendimiento... y los datos en el otro...

Primer disco duro con:

  • /dev/sda -> Cargador TrueCrypt (El MBR)
  • /dev/sda0 -> Windows cifrado por TrueCrypt (algunos GB)
  • /dev/sda1 -> Linux Ubuntu / (algunos GB) contendrá otro Grub, una subcarpeta llamada boot y todos los archivos del sistema, etc.

Segundo HDD con:

  • /dev/sdb -> Cargador GRUB2 (El MBR) Lo haré referencia como "BootMenu"
  • /dev/sdb1 -> /boot para GRUB2 "BootMenu" (512 MB si lo desea en el archivo SystemRescueCD.iso)
  • /dev/sdb2 -> Partición NTFS para DATOS vistos en Windows y Linux (si no están cifrados) como

Espero que llegues a ello.

Lo expliqué así solo pensando que sabes cómo arrancar desde un CD, configurar BIOS, crear particiones, instalar GRUB2, etc.

Esto no es para novatos. Tiene pasos técnicos muy avanzados y no es un HowTo...

Es sólo la idea de arrancar desde otro medio, dichos otros medios (un CD, disquete, etc.) contendrán un menú de arranque que permitirá seleccionar arrancar desde el primer disco duro o desde una partición, etc... en otras palabras, GRUB2.

Espero que lo encuentres útil.

Respuesta2

Parece que la solución más sencilla para esto es utilizar el gestor de arranque de Windows para iniciar Grub y no al revés. Grub parece incapaz de arrancar en una partición de Windows cifrada incluso con --force.

Existe una herramienta llamada EasyBCD (gratuita para uso no comercial) que configurará correctamente el gestor de arranque de Windows para que arranque en Grub una vez que haya ingresado su contraseña de TrueCrypt. Ahora tengo mi unidad de Windows como primer dispositivo de arranque en el BIOS y Grub como elemento de arranque predeterminado en el gestor de arranque de Windows. También puedes hacer que Windows sea el predeterminado.

Respuesta3

Puede simplemente ingresar al menú de inicio y elegir el disco duro desde el que desea iniciar.

En mi caso lo hago presionando F11cuando se muestran los mensajes POST. Puede que Fen tu caso sea una clave diferente.

información relacionada