Gostaria de saber se é possível ter uma implementação de initrd dividida. Nossa razão para fazer isso é o fato de que nosso aplicativo baseado no Fedora usa uma versão simplificada do Fedora por baixo com um arquivo initrd que se tornou tão grande (+500 MB), que o GRUB2 está nos causando problemas com esse arquivo em alguns computadores (principalmente baratos Laptops HP que nossos clientes adoram comprar de acordo com nossas recomendações). Estabelecemos que o problema está nos GRUB2
laptops initrd
HP e HP, porque a descompactação initrd
permite que essas máquinas inicializem. Para nosso caso de uso, entretanto, precisamos ser capazes de inicializar na RAM, porque nosso aplicativo é um RAMDisk inicializável que executa nosso aplicativo em um ambiente de quiosque.
Já estamos usando a forma mais alta de compactação initrd
(XZ nível 9). Servir rootfs a partir de um compartilhamento de rede e forçar nossos clientes a ajustar sua infraestrutura é uma solução indesejável. Gostaríamos de manter a opção de nosso aplicativo simplesmente inicializar a partir de um dispositivo USB, como já estão fazendo.
Divergir do GRUB2 talvez também fosse uma opção, mas isso colocaria em risco nossa capacidade de inicializar em hardware habilitado para inicialização segura somente EFI (porque os pacotes GRUB2 são pré-assinados por alguns fornecedores para inicialização segura).
É possível simplesmente dividir nosso maciço initrd
? Ou temos outras opções?
Obrigado.
EDIT: Infelizmente, precisamos fornecer tantos módulos quanto possível. Esta imagem precisa ser portátil em tantos tipos diferentes de dispositivos quanto possível, para reduzir as chances de clientes entrarem em pânico no kernel.