Quando um initrd seria necessário?

3

Eu li que posso inicializar o kernel sem initrd, e também li que módulos adicionais são carregados durante o estágio initrd - pelo que entendi, para os drivers necessários que não foram incluídos no kernel.

Se eu construir o kernel com make defconfig && make , em que tipo de hardware posso esperar que o kernel inicialize? Um desktop razoavelmente moderno? Virtualbox?

Quando eu realmente precisaria de initrd / initramfs?

Estou tentando montar um sistema mínimo para ativar o Virtualbox e, se possível, gostaria de manter as coisas simples e não usar um initrd.

    
por math4tots 27.02.2012 / 08:08

1 resposta

6

Você pode inicializar sem initrd em qualquer hardware. Eu nunca uso em desktops / laptops e servidores domésticos, porque isso só aumenta o tempo de inicialização. A única situação em que eu achei realmente necessário até agora, é quando seu sistema de arquivos raiz está em um LVM (mas eu posso estar errado - pode haver alguma maneira de fazer isto também).

Se você quer que sua configuração seja rápida e simples, você deve antes de tudo tentar remover todas as coisas desnecessárias da configuração do seu kernel. Existem duas maneiras gerais de fazer isso ao configurar seu kernel:

  • descarte - tente se livrar de todos os módulos e opções desnecessários

ou

  • construir - use uma configuração mínima e adicione apenas as coisas que você precisa

Eu pessoalmente recomendo a segunda opção - simplesmente porque leva menos tempo e você evita ser sobrecarregado pela incerteza sobre todas as opções. Para um ótimo ponto de partida, você pode escolher uma semente de kernel de Pappy adequada. Você pode encontrar mais informações sobre elas em sua página da web . Com essa abordagem, uma dica geral do meu lado é executar primeiro o lspci -knn , que informará a você quais módulos são usados atualmente pela maioria de seu hardware.

    
por 27.02.2012 / 08:20