Como especificar um ISO como local do sistema de arquivos raiz do GRUB?

Como especificar um ISO como local do sistema de arquivos raiz do GRUB?

Estou tentando entender o Debian"inicializando a partir do disco rígido"manual de instalação.

O processo é o seguinte: copio um kernel image, um ramdisk initrde um ISOinstalador with para o disco rígido e então configuro o GRUB para iniciar o kernel e o ramdisk, mas também tenho que informar ao GRUB onde está o sistema de arquivos raiz (ele deve estar localizado no ISO), para que o kernel possa fazer root nele. Mas oconfigurações grub fornecidas pelo debianparece especificar todo o disco rígido como sistema de arquivos raiz, não o arquivo ISO dentro dele:

GRUB1:

title  New Install
root   (hd0,0)
kernel /boot/newinstall/vmlinuz
initrd /boot/newinstall/initrd.gz

GRUB2:

menuentry 'New Install' {
insmod part_msdos
insmod ext2
set root='(hd0,msdos1)'
linux /boot/newinstall/vmlinuz
initrd /boot/newinstall/initrd.gz
}

Por que isso funcionaria? O GRUB é tão inteligente para montar o arquivo ISO no disco rígido como sistema de arquivos raiz, não como todo o disco rígido? Ou preciso transferir ddo conteúdo do ISO diretamente para o disco rígido? O Debian é vago sobre isso.

Responder1

Copiado do comentário do Frostshutz:

o initrd.gz (initramfs) contém o ambiente de usuário do busybox e os scripts Debian escritos para esse propósito. GRUB2 também suporta montagem de loop ISO diretamente, mas geralmente apenas para pegar o kernel/initrd do próprio ISO, e uma vez carregado novamente, o ISO deve ser encontrado e montado em loop pelo kernel/initrd.

informação relacionada