Inicialize imagens iso do USB inicializável

1

Estou tentando descobrir uma solução universal para ter um cartão de memória USB de inicialização múltipla. Eu tenho algumas imagens ISO como: knoppix, debian, ubuntu, etc.

Existe alguma maneira de executar o seguinte procedimento:

  1. Item da lista
  2. carregar um micro kernel / carregador de inicialização do cartão de memória inicializável na RAM
  3. carregue os módulos mais necessários para montar o sistema de arquivos, iso etc.
  4. inicialize diretamente desse iso.

Eu sei que existem várias soluções que encontrei, mas nenhuma delas é universal:

  1. O grub4dos pode carregar a imagem inteira para ram e depois inicializá-la. -> tudo bem se a imagem for pequena, mas se tiver, por exemplo, 4 GB de RAM, devemos ter pelo menos 6-8 GB para funcionar corretamente.
  2. O grub2 pode inicializar a partir do iso, mas precisamos saber exatamente quais são os parâmetros do syslinux. Este é um exemplo de configuração do grub.cfg que eu preparei para o meu Knoppix ISO:

    menuentry "Knoppix" {
    set isofile="/boot/iso/knoppix.iso"
    echo "Loading kernel.."
    loopback loop $isofile
    linux (loop)/boot/isolinux/linux64 boot=casper iso-scan/filename=$isofile ramdisk_size=100000 lang=en vt.default_utf8=0 acpi=off apm=power-off vga=791 nomce fromiso=$isofile noeject noprompt --
    echo "Loading modified initrd.."
    initrd (loop)/boot/isolinux/minirt.gz
    

    }

O problema é que, após a inicialização do kernel, o processo init não consegue encontrar os arquivos montados, mesmo que existam no meu iso montado em loopback.

Consegui inicializar com sucesso alguns dos meus ISOs, mas isso não é universal. Às vezes falha.

E o instalador do Windows. Digamos que alguns dos meus amigos que não possuem nenhum dispositivo de CD / DVD desejam que eu reinstale o sistema. Posso fazer isso da mesma maneira? Honestamente, provavelmente resolveria esse problema há alguns anos, mas trabalho na plataforma Linux há muitos anos e tenho contato com o Windows-es apenas no trabalho.


fonte
O Linux_420 tem um ótimo artigo sobre o LQ sobre como usar o syslinux para isso.
Thor

Respostas: