Inicializando o Linux minimamente

2

Eu estou tentando inicializar apenas o próprio linux. É principalmente para a experiência de aprendizagem. Eu tenho um pequeno disco rígido com apenas uma partição ext4 com esta aparência:

/bin/bash             
/dev/console
/boot/vmlinuz         
/boot/grub/grub.cfg
/boot/grub/i386-pc/*.mod

bash é a versão 3.0 vinculada estaticamente, vmlinuz é a versão 3.16.2 e grub é a versão 2.00rc1. grub.cfg é assim:

insmod linux
insmod search 
insmod ext2
insmod part_msdos
set timeout=5

menuentry 'Linux' {
    set the_root_uuid=a0225737-71c9-4d60-81e2-275dc078c3c1
    search --fs-uuid $the_root_uuid --set=root
    linux /boot/vmlinuz root=$root ro init=/bin/bash
}

ao inicializar, recebo o seguinte:

kernel panic: VFS could not open device root (hd0,msdos1), or unknown block(0,0) error -6

O que estou perdendo?

    
por charly 06.09.2014 / 17:45

1 resposta

1

Seu kernel não inclui os drivers necessários para acessar o sistema de arquivos raiz (por exemplo, o módulo ahci sata e possivelmente também o módulo ext4).

Você precisa fornecer um initrd / initramfs que carregue os módulos apropriados ou você precisa compilar um kernel que inclua os drivers necessários estaticamente (não como módulos).

Como seu rootfs não inclui ferramentas para carregar módulos, sugiro que você construa um kernel não modular.

    
por 07.09.2014 / 09:33