# [grub]boot iso desde grub{solucionado-con grub2}

## upszot

Hola gente..

 estoy intentando bootear con grub desde una ISO alojada en una particion ext3...

```

title BOOTEAR DESDE .ISO EN DISCO

root (hd0,10)

kernel          /casper/vmlinuz boot=fll quiet vga=0x365 i8042.nomux=1 fromiso=/qimo-2.0-desktop.iso

initrd          /casper/initrd          
```

aca es donde tengo la .iso

```
upszot@M1530 ~ $ sudo fdisk -l |grep sda11

/dev/sda11          37870       38392     4200966   83  Linux 

```

si vemos el contenido de la iso...

 *Quote:*   

> upszot@M1530 ~ $ ls -l /mnt/cd-virtual/casper/ |egrep 'vm|ini'
> 
> -r--r--r-- 1 root root   9466436 May 25  2010 initrd.lz
> 
> -r--r--r-- 1 root root   4029792 Apr 16  2010 vmlinuz
> ...

   (la iso la monte en cd-virtual obviamente...

El cartel de error que devuelve es 

Error 15: file not found

alguna idea de como solucionarlo...??

... Mi inicio normal seria este...

```
title Gentoo Linux -- kernel 2.6.36-gentoo-r5 16/12/2010

root (hd0,2)

kernel /vmlinuz-2.6.36-gentoo-r5 root=/dev/sda6 ro i8042.nomux=1 vga=0x365 
```

según lo que lei, el root (hd0,xx) le tengo q poner en donde esta la imagen...

saludos

----------

## samuelhm

yo tengo configurado el grub para bootear varias isos, aunque yo tengo instalado grub-9999 de portage que es segun he leido en otras distros la version beta de grub2.

Por lo que veo eso es un menu.lst de grub1 lo que has escrito y no se si realmente funciona, pero si funciona seria (hd0,10).

(hd0,11) en la ultima version que usa grub.cfg y tiene las configuraciones en /etc/grub.d 

 en esta version los discos empiezan en 0 pero las particiones a partir de 1

lo que mejor puedes hacer es cuando aparece el menu de grub cuando arrancas, si te pones sobre la linea que quieres arrancar la iso y pulsas la tecla E puedes editar esa linea y pulsar ctrl+x o F10 para arrancar y probar como quieras editando al momento el arranque.

----------

## samuelhm

ah y creo que esa manera de arrancar de un cd es extrayendo el contenido al disco duro no arrancando automaticamente desde la iso.

Esto lo hace el programa UnetBootin, con esto en un par de clicks añades un arranque de una imagen iso, pero realmente lo que hace es extraer la iso a la carpeta /casper de tu raiz y arrancar alli.

Yo me instalé una version mas nueva de grub porque este metodo para mi es una chapuza, que copia demasiados datos al disco duro y ademas que si usas UnetBootin para hacerlo solo puedes poner 1 imagen cada vez, y por experiencia personal si es para instalar alguna distribución de linux da problemas aveces ya que algunas distros una vez instalan buscan algunos paquetes en el cd para finalizar la instalación y como no los encuentra lanza un error.

----------

## quilosaq

Como ya se ha comentado parece que el tema es posible de materializar. He encontrado este artículo que dice como hacerlo.

Es imprescindible usar GRUB 2. En portage existen las veriones 1.98 y 1.99_rc-1 (además de la 9999) que instalan GRUB 2. No tienen ninguna KEYWORD lo que significa que GENTOO no las considera estables ni en pruebas en ninguna arquitectura.

Si alquien se decide a intentarlo tendrá que leer el manual que hay hasta ahora; y quizá este otro.

También creo que hay que valorar para que se necesita esta característica (probar muchas distribuciones, "sentir" como de fluida funciona una determinada distribución, etc) porque quizá sea preferible el usar en su lugar máquinas virtuales.

----------

## samuelhm

asi es como yo lo he hecho para agregar una iso de fedora a grub2:

instalar grub

```
emerge =sys-boot/grub-9999
```

modificar /etc/grub.d/40_Custom añadiendo esto:

```
#!/bin/sh

exec tail -n +3 $0

# This file provides an easy way to add custom menu entries.  Simply type the

# menu entries you want to add after this comment.  Be careful not to change

# the 'exec tail' line above.

menuentry "iso fedora 11" {

set root=(hd0,2)    //esto deberas modificarlo segun sea tu disco duro, si es sda11, seria hd0,11

loopback loop /home/samuel/isos/Fedora-11-i686-Live.iso   //simplemente la ruta al archivo

linux (loop)/isolinux/vmlinuz0 root=CDLABEL=Fedora-11-i686-LiveCD  //con (loop) indicas que busque dentro de la iso

initrd (loop)/isolinux/initrd0.img

}
```

Generar el archivo /boot/grub/grub.cfg (equivalente a menu.lst de grub1) con las modificaciones que has añadido:

```
grub-mkconfig
```

cargar en el mbr:

```
grub-install /dev/sda
```

   // o cual sea tu disco duro

si quieres que grub2 te detecte algun sistema operativo y no lo hace el solo, puedes instalar os-prober.

----------

## upszot

 *quilosaq wrote:*   

>  He encontrado este artículo que dice como hacerlo.

  si justamente vi el mismo... aunque ese es con grub2 ...

pero encontre este otro donde lo hacen con grub1 http://wiki.venenux.org/Gestor_de_arranque

 *quilosaq wrote:*   

> También creo que hay que valorar para que se necesita esta característica (probar muchas distribuciones, "sentir" como de fluida funciona una determinada distribución, etc) porque quizá sea preferible el usar en su lugar máquinas virtuales.

 bueno la idea es tener un metodo facil de probar/conocer algunas distribuciones sin tener que estar instalando la en una virtual y sin tener q quemar un cd o gastar un usb para ello...

lo que contas mas abajo de la imagen que quizás haya que extraerla, no lo sabia... si llega a ser asi,eso ya haria que pierda un poco la gracia... ya que la opcion de tirar una iso en el disco y bootear de ella es practico por lo rapido...

 por otro lado, lo que comentaste del tema de editar la configuración del grub al arranque, lo habia probado... tambien de poner los paths sin la / adelante y con y sin el path absoluto de donde esta el kernel o la iso... (creo que llegue a jugar con todas las convinaciones posibles, sin resultado)...

con respecto a instalar el grub2... lo pense... y estuve buscando a ver si encontraba alguna guia para la actualizacion para saber que recaudos hay q tomar, pero no encontre nada para gentoo... 

lo unico que encontre fue un post en ingles, donde si entendi bien, decian que antes habia que borrar la carpeta "/boot/grub" y algo de instalar grub2 en otro slot para la transicion.. pero no entendi bien como hacer el cambio....

 vi que haciendo 

```
echo "sys-boot/grub **" >> /etc/portage/package.keywords

emerge -uDvNa  grub
```

 me dejaba instalar la "sys-boot/grub-1.98" pero como dije antes... siempre le tengo respeto a lo que es instalacion del grub (miedito) y quisiera saber si tengo q tomarme algun resguardo para no quedarme sin poder ingresar en el sistema despues...

saludos

----------

## pelelademadera

tirate un tirito, si no anda, bootea el live cd y reemerge grub1, hacete un backup del /boot, no es pesado, al menos el kernel, el initrd y el menu.lst

reemerges grub, y move eso arriba nuevamente.

yo intente pasarme a grub2, pero tuve muchos problemas con el software raid de intel...

----------

## upszot

oka... eso hare... 

por depronto les comento... se ve que anoche estaba medio dormido y omití el paso 4 de la wiki que les deje...

lo que decia era de copiar el vmlinuz y el initdr en una carpeta y esos son los que apuntan en las lineas de kernel e initdr respectivamente... por lo que quedo asi...

```
title BOOTEAR DESDE .ISO EN DISCO

root (hd0,10)

kernel          /casper/vmlinuz-quimo-2.0 boot=fll quiet vga=0x365 i8042.nomux=1 fromiso=/qimo-2.0-desktop.iso

initrd          /casper/initrd.lz-quimo-2.0

                                                                                                                                                                                                                                                                                                                                                               

title BOOTEAR DESDE .ISO EN DISCO prueba 2                                                                                                                                       

root (hd0,10)                                                                                                                                                                    

kernel          /casper/vmlinuz-ubuntu-10.10 boot=fll quiet vga=0x365 i8042.nomux=1 fromiso=/ubuntu-10.10-desktop-amd64.iso                                                      

initrd          /casper/initrd.lz-ubuntu-10.10       
```

 y los archivos en la particion asi...

```
M1530 upszot # ls -lR /mnt/winred/

/mnt/winred/:

total 1429260

drwxr-xr-x 2 root root      4096 Mar 21 01:24 casper

drwx------ 2 root root     16384 Mar 19 12:28 lost+found

-rwxr-xr-x 1 root root 733347840 Mar 19 17:57 qimo-2.0-desktop.iso

-rwxr-xr-x 1 root root 728754176 Mar 19 17:58 ubuntu-10.10-desktop-amd64.iso

/mnt/winred/casper:

total 28984

-r--r--r-- 1 root root  9466436 Mar 21 01:10 initrd.lz-quimo-2.0

-r--r--r-- 1 root root 11788901 Mar 21 01:23 initrd.lz-ubuntu-10.10

-r--r--r-- 1 root root  4029792 Mar 21 01:10 vmlinuz-quimo-2.0

-r--r--r-- 1 root root  4335760 Mar 21 01:23 vmlinuz-ubuntu-10.10

```

Con esto logre solventar el problema del error 15... ahora técnicamente estaría booteando...

...ahora les digo pq técnicamente... en ambos casos me esta tirando un kernel panic...

pero en las pocas lineas que me devuelve (al menos en el caso de ubuntu) se logra ver que dice "ubuntu blablabla" por lo que me da la impresión de que si esta tomando las cosas como debe ser... y que seguramente nuestro amigo "samuelhm" tenga razón con el tema de la extracción de los archivos de la iso...  (me faltaría probar eso..) aunque en ese caso ya no tendría le encontraría sentido a esta parte... "fromiso=xxx.iso"

quiero aclarar que al menos la iso de ubuntu se que funciona pq tengo una virtual instalada desde la misma...

saludos

Edit: por otro lado... para el backup del /boot  ...con hacer asi estaría bien?  " tar -cvzf backup-boot /boot  "   y para restaurarlo "tar -xvzf backup-boot.tgz" 

o debería de pasarle algo mas para que me guarde los permisos y usuarios..?

----------

## upszot

hola...

bueno al final termine instalando grub2, con algunos inconvenientes.. https://forums.gentoo.org/viewtopic-t-871801.html

pero el tema de bootear desde una iso en el disco con grub lo pude hacer de la siguiente manera...

(pongo 2 ejemplos que funcionan)

```
upszot@M1530 ~ $ tail -n16 /etc/grub.d/40_custom 

menuentry "QIMO CD-Live" { 

set root=(hd0,11) 

loopback loop /qimo-2.0-desktop.iso 

linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=/qimo-2.0-desktop.iso -- 

initrd (loop)/casper/initrd.lz 

}

menuentry "Ubuntu 10.10 Maverick ISO 64bit" { 

set isofile="/ubuntu-10.10-desktop-amd64.iso" 

loopback loop (hd0,5)$isofile 

linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile nomodeset 

initrd (loop)/casper/initrd.lz 

}

```

espero que a alguien mas le sirva...

saludos

----------

