Grub2 e montando um rootfs

1

Estou tentando inicializar uma máquina usando uma versão do kernel (linux-2.6.32.68 - unpatched) que compilei e montei um pequeno sistema de arquivos raiz.

Eu criei um pequeno sistema de arquivos ext2 usando o seguinte:

dd if=/dev/zero of=rootfs.img bs=1k count=8000
mkfs.ext2 -i 1024 -F rootfs.img

Participei de acordo com o seguinte guia: link Portanto, ele tem os binários do busybox necessários e um script de inicialização para ser executado.

Isso tudo funciona bem ao iniciar usando o QEMU para emular uma máquina real, ou seja, o Kernel carrega e monta o rootfs, por exemplo:

qemu-system-x86_64 -m 64 -hda ./rootfs.img -kernel linux-2.6.32.68/arch/x86/boot/bzImage -append "root=/dev/sda init=/sbin/init"

No entanto, eu tentei adicionar meu binário do kernel (bzImage) e meu rootfs (rootfs.img) a uma VM executando o fedora 22 para que eu possa inicializá-lo usando isso. Eu adicionei o kernel ao / boot e o renomei conforme apropriado. Eu então executei grub update ou similar para regenerar o /boot/grub2/grub.cfg e ele pegou meu novo kernel com sucesso. Tudo parecia bem e agora eu recebo um menu de boot loader para a VM.

Eu tentei editar manualmente o arquivo grub.cfg para montar meu sistema de arquivos.     root = / rootfs.img.

No entanto, ao tentar inicializar o kernel, ele carrega, mas trava, reclamando que não é possível montar esse VFS em particular e lança um pânico no kernel.

Alguma ideia? Estou especificando meu sistema de arquivos raiz incorretamente? Eu até tentei converter meus rootfs para ext3, mas isso não faz diferença.

Minha abordagem está fadada ao fracasso?

    
por user3742467 22.09.2015 / 20:52

0 respostas