Red Hat 准备彻底淘汰引导加载程序

自古以来,Linux 都是通过引导加载程序启动的。这是由于 IBM PC 的架构限制,CPU 从配置好的磁盘读取一个扇区,而读取的代码量仅为 510 字节。这点代码量不足以理解内核所在的文件系统,因此大多数引导加载程序都采用两阶段设计:首先加载初始的 510 字节,然后加载足够的第二阶段代码来理解 ext4 或其他文件系统,最后才启动内核。

随着时间的推移,我们从 loadlin 过渡到 LILO,再到 GRUB,现在是 GRUB2。SYSLINUX、PXELINUX、EXTLINUX 也曾被使用过,还有其他一些工具。

现在,红帽工程师玛尔塔·莱万多夫斯卡(Marta Lewandowska)提出了不同的观点。您可以在YouTube上观看她题为“不再使用引导加载程序:请改用内核”的完整演讲(见下方),该演讲发表于2026年DevConf.CZ大会。

她的项目名为nmbl (“不再需要引导加载程序”,发音为“nimble”),旨在用内核本身取代传统的引导加载程序。GRUB虽然能用,但它一直是安全漏洞的来源,而且它的很多代码在内核中都是重复的。

nmbl 可能带来哪些好处?

  • 由于无需引导加载程序,启动速度更快。nmbl 有两种变体,其中一种支持多内核启动。
  • 理论上,安全性会提高,因为代码更少,攻击面更小。
  • 由于只有一个平台而不是多阶段的框架,未来的功能开发应该会更容易。

这就是未来吗? LWN 的报道下有一些评论持怀疑态度。请查看创建者在 nmbl 上的博客文章和演示文稿: