A inicialização da iso é um recurso que deve ser suportado pela distro, e a opção iso-scan/filename= não funcionará no Fedora ou em outros. Aqueles podem ter outras opções de kernel para este recurso ou o recurso pode não ser suportado de forma alguma.
Eu encontrei um método para inicializar o DVD do Fedora 16, abaixo.
Inicializando o Fedora 15 DVD iso from grub
menuentry "Fedora 15 (DVD)" {
insmod loopback
insmod iso9660
set isofile="/Fedora-15-x86_64-DVD.iso"
loopback loop (hd0,2)$isofile
linux (loop)/isolinux/vmlinuz rootfstype=auto root=live:UUID=:$isofile ro quiet
initrd (loop)/isolinux/initrd.img
}
Ele assume que seu arquivo iso está na raiz da segunda partição do disco rígido interno.
Você pode procurar outra distribuição no google, já que não é um recurso independente de distro.
Nota 1: Também funcionou com o Fedora 16, acabei de testá-lo.
Nota 2: Parece que o método funcionou quando colocou o iso arquivo em uma partição fat ou ext4.
Inicializando o grml small iso do grub2
O Grml também pode ser inicializado a partir do grub2. Observe que ele usa a opção findiso em vez da opção iso-scan/filename , indicando que a inicialização da iso é implementada como opções diferentes em distribuições diferentes.
(menuentry "Grml small 2009.10" {
loopback loop /boot/iso/grml-small_2009.10.iso
linux (loop)/boot/grmlsmall/linux26 findiso=/boot/iso/grml-small_2009.10.iso apm=power-off lang=us vga=791 boot=live nomce noeject noprompt --
initrd (loop)/boot/grmlsmall/initrd.gz
}
Esta página tem vários exemplos de outras distros sendo inicializadas no Grub2.
Inicializando o openSUSE 13.1 Live from iso
Aqui está a única solução que funcionou (todos os outros me deram um Falha ao encontrar o identificador do MBR e pararam). Neste exemplo, o iso é colocado na terceira partição do primeiro disco no diretório /home/username/ .
menuentry "openSUSE_13.1_GNOME_Live" {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos3)'
set isofrom_device='/dev/sda3'
set isofrom_system='/home/username/openSUSE-13.1-GNOME-Live-i686.iso'
set loader='/boot/i386/loader'
loopback loop $isofrom_system
linux (loop)$loader/linux isofrom_device=$isofrom_device isofrom_system=$isofrom_system ramdisk_size=512000 ramdisk_blocksize=4096 ro quiet splash $vt_handoff preloadlog=/dev/null showopts
initrd (loop)$loader/initrd
}
A fonte é comentário do janeppo .
Fedora 17 Gnome Live Iso
Aqui está a entrada do menu de inicialização grub.cfg para o Fedora 17. o iso é colocado na terceira partição do primeiro disco. Além disso, o nome do arquivo é alterado.
menuentry "Fedora Live" {
loopback loop (hd0,3)/fedora.iso
linux (loop)/EFI/BOOT/vmlinuz0 root=live:/fedora.iso rootfstype=auto ro liveimg quiet rhgb rd.luks=0 rd.md=0
initrd (hd0,3)/initrd-fromiso
}
Última nota: acho que esta resposta serve como um exemplo. Não deve ser elaborado mais com exemplos.