- A equipe de engenharia de bootloaders da Red Hat está desenvolvendo uma nova abordagem para substituir o bootloader GRUB
- Propõe o nmbl (no more boot loader), uma solução em espaço de usuário baseada em Linux, rápida e segura
- Problemas do bootloader GRUB
- O GRUB é um bootloader poderoso e flexível, usado em várias arquiteturas (x86_64, aarch64, ppc64le OpenFirmware)
- Porém, sua funcionalidade complexa dificulta a manutenção e muitas vezes duplica recursos do kernel Linux ou fica para trás em relação a ele
- Além disso, acaba gerando muitas vulnerabilidades de segurança
- Vantagens do kernel Linux
- O kernel Linux tem uma grande base de desenvolvedores, o que permite evolução rápida de recursos e resposta a vulnerabilidades
- A revisão geral também é feita de forma mais rigorosa
- Nova solução: usar o kernel como bootloader
- É carregado pelo EFI stub no UEFI e empacotado como uma Unified Kernel Image (UKI)
- O kernel, o initramfs e a linha de comando do kernel incluem tudo o que é necessário para alcançar o destino final do boot
- Todos os drivers necessários, suporte a sistemas de arquivos e rede já estão embutidos, evitando duplicação de código
1 comentários
Comentários do Hacker News
Uso UEFI há 10 anos. O tempo de boot fica um pouco menor, mas o bootloader tem várias vantagens
O bootloader do FreeBSD consegue inicializar sem initramfs. Precisamos de um bootloader mais inteligente
Há muitos mal-entendidos sobre as capacidades e limitações do ambiente UEFI. As pessoas estão entendendo errado o objetivo real do projeto
Isso lembra o MILO, que era usado para inicializar Linux em sistemas DEC Alpha nos anos 90
Antes usei Linux+Coreboot em um Chromebook. Por causa de bugs de driver na BIOS UEFI Tianocore, acabei usando Linux diretamente
É melhor aproveitar mais os recursos do UEFI e do Linux. O ZFSBootMenu já fornece um aplicativo EFI há 4 anos
Há preocupação com problemas de compatibilidade com kexec
Fazer o EFI stub configurar multiboot, kernel e initrd, e depois saltar para eles, é simples
Fico me perguntando se a solução proposta conseguirá lidar com boot multi-OS
Não entendo por que usar essa solução em vez de plain EFISTUB