El cargador de arranque GRUB2 de Linux puede arrancar archivos ISO de Linux directamente desde su disco duro. Arranque CDs en vivo de Linux o incluso instale Linux en otra partición de disco duro sin grabarlo en el disco o arrancar desde una unidad USB.
Realizamos este proceso en Ubuntu 14.04: las distribuciones de Linux basadas en Ubuntu y Ubuntu tienen un buen soporte para esto. Otras distribuciones de Linux deberían funcionar de manera similar.
¿De qué vamos a hablar?
Obtener un archivo ISO de Linux
Este truco requiere que tenga un sistema Linux instalado en su disco duro. Su computadora debe estar utilizando el cargador de arranque GRUB2, que es un cargador de arranque estándar en la mayoría de los sistemas Linux. Lo sentimos, no puede arrancar un archivo ISO de Linux directamente desde un sistema Windows con el cargador de arranque de Windows.
Descargue los archivos ISO que desea utilizar y guárdelos en su partición Linux. GRUB2 debería ser compatible con la mayoría de los sistemas Linux. Si desea usarlos en un entorno en vivo sin instalarlos en su disco duro, asegúrese de descargar las versiones de “LIVE CD” de cada ISO de Linux. Muchos discos de utilidad de arranque basados en Linux también deberían funcionar.
Compruebe el contenido del archivo ISO
Es posible que deba buscar dentro del archivo ISO para determinar exactamente dónde se encuentran los archivos específicos. Por ejemplo, puede hacer esto abriendo el archivo ISO con la aplicación gráfica Archive Manager / File Roller que viene con Ubuntu y otros entornos de escritorio basados en GNOME. En el administrador de archivos de Nautilus, haga clic con el botón derecho en el archivo ISO y seleccione Abrir con Archive Manager.
Localice el archivo del kernel y la imagen initrd. Si está utilizando un archivo ISO de Ubuntu, encontrará estos archivos dentro de la carpeta casper: el archivo vmlinuz es el kernel de Linux y el archivo initrd es la imagen initrd. Deberá conocer su ubicación dentro del archivo ISO más adelante.
Determinar la ruta de la partición del disco duro
GRUB utiliza un esquema de “nombre de dispositivo” diferente al de Linux. En un sistema Linux, /dev/sda1 es la primera partición en el primer disco duro — un significa el primer disco duro y 1 significa su primera partición. En GRUB, (hd0,1) es equivalente a /dev/sda0. El significa el primer disco duro, mientras que el 1 significa la primera partición en él. En otras palabras, en un nombre de dispositivo GRUB, los números de disco comienzan a contar en 0 y los números de partición comienzan a contar en 1, sí, es innecesariamente confuso. Por ejemplo, (hd3,6) se refiere a la sexta partición en el cuarto disco duro.
Puede utilizar el fdisk -l para ver esta información. En Ubuntu, abra un Terminal y ejecute el siguiente comando:
sudo fdisk -l
Verá una lista de rutas de dispositivos Linux, que puede convertir a nombres de dispositivos GRUB por su cuenta. Por ejemplo, a continuación podemos ver que la partición del sistema es /dev/sda1, así que eso es (hd0,1) para GRUB.
Crear la entrada de arranque de GRUB2
La forma más fácil de agregar una entrada de arranque personalizada es editar el script /etc/grub.d/40_custom. Este archivo está diseñado para entradas de arranque personalizadas agregadas por el usuario. Después de editar el archivo, el contenido de su archivo /etc/defaults/grub y los scripts /etc/grub.d/ se combinarán para crear un archivo /boot/grub/grub.cfg, no debe editar este archivo a mano. Está diseñado para generarse automáticamente a partir de la configuración que especifique en otros archivos.
Deberá abrir el archivo /etc/grub.d/40_custom para editarlo con privilegios de root. En Ubuntu, puede hacer esto abriendo una ventana de Terminal y ejecutando el siguiente comando:
sudo gedit /etc/grub.d/40_custom
Siéntase libre de abrir el archivo en su editor de texto favorito. Por ejemplo, puede reemplazar “gedit” por “nano” en el comando para abrir el archivo en el editor de texto Nano.
A menos que haya agregado otras entradas de arranque personalizadas, debería ver un archivo mayormente vacío. Deberá agregar una o más secciones de arranque ISO al archivo debajo de las líneas comentadas.
Así es como puede arrancar una distribución basada en Ubuntu o Ubuntu desde un archivo ISO. Probamos esto con Ubuntu 14.04:
menuentry “Ubuntu 14.04 ISO” {
establecer isofile=”/home/nombre/Descargas/ubuntu-14.04.1-desktop-amd64.iso“
bucle invertido (hd0,1)€isofile
linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=€{isofile} quiet splash
initrd (bucle)/casper/initrd.lz
}
Personalice la entrada de arranque para que contenga el nombre de entrada demenú deseado, la ruta correcta al archivo ISO del equipo y el nombre del dispositivo del disco duro y la partición que contiene el archivo ISO. Si los archivos vmlinuz e initrd tienen nombres o rutas de acceso diferentes, asegúrese de especificar el pa correctoa esos archivos, también.
(Si tiene una partición /home/ separada, omita el bit /home, así: set isofile=”/name/Downloads/€{isoname}”).
Nota importante: Las diferentes distribuciones de Linux requieren diferentes entradas de arranque con diferentes opciones de arranque. El proyecto GRUB Live ISO Multiboot ofrece una variedad de entradas de menú para diferentes distribuciones de Linux. Debería poder adaptar estas entradas de menú de ejemplo para el archivo ISO que desea arrancar. También puede realizar una búsqueda web del nombre y el número de versión de la distribución de Linux que desea arrancar junto con “arranque desde ISO en GRUB” para encontrar más información.
Si desea agregar más opciones de arranque ISO, agregue secciones adicionales al archivo.
Guarde el archivo cuando haya terminado. Vuelva a una ventana de Terminal y ejecute el siguiente comando:
sudo update-grub
La próxima vez que inicie su computadora, verá la entrada de arranque ISO y podrá elegirla para arrancar el archivo ISO. Es posible que tenga que mantener presionada la tecla Mayús durante el arranque para ver el menú GRUB.
Si ve un mensaje de error o una pantalla negra cuando intenta arrancar el archivo ISO, ha configurado mal la entrada de arranque de alguna manera. Incluso si obtuvo la ruta del archivo ISO y el nombre del dispositivo correctos, las rutas a los archivos vmlinuz e intird en el archivo ISO pueden no ser correctas o el sistema Linux que está arrancando puede requerir diferentes opciones.