Corrigindo o kernel para permitir a inicialização sem initrd

1

A primeira resposta de ' Por que Linux usa um disco de RAM inicial na inicialização? 'afirma que o sistema de arquivos de RAM inicial / inicial é usado para fornecer drivers para montar o sistema de arquivos raiz real. Ele também diz que é possível corrigir esses drivers no kernel, portanto, um initrd ou sistema de arquivos inicial da RAM não é necessário, mas não deu explicações sobre como. Como posso corrigir o kernel (versão mais recente) para montar um sistema de arquivos EXT4 na raiz sem o auxílio do initrd , e esta solução suportará UUIDs ?

    
por Billy 23.06.2016 / 05:10

1 resposta

3

Você não precisa corrigir nada. Você só precisa configurar e compilar o kernel sozinho. Esta é uma tarefa avançada, portanto, não é para iniciantes. O truque é configurar o kernel para suportar apenas o seu hardware e compilar tudo dentro do kernel e não como um módulo (pelo menos os drivers necessários para a inicialização: controlador de disco, sistema de arquivos,…).

Existem muitos tutoriais, como configurar e compilar seu kernel

Então apenas pesquise no google "kernel compile {your distro}". É importante usar o tutorial correto para sua distribuição. A distro que você está usando pode esperar alguma funcionalidade disponível apenas no kernel "distro" e não no kernel "vanilla". O tutorial correto apontará para corrigir fontes.

Você pode usar UUIDs em /etc/fstab , mas não no GRUB depois de remover initrd / initramfs.

Por exemplo, estou usando o Gentoo e nunca usei initrd / initramfs. Toda vez que o novo kernel está disponível, eu preciso configurá-lo e compilá-lo sozinho. Estou usando o grub com o parâmetro root=/dev/sdb4 kernel, mas no fstab estou usando UUIDs.

    
por 23.06.2016 / 10:39