LinuxBoot[1] 是私有的 UEFI[2] 固件的开源 替代品[3]。它发布于去年,并且现在已经得到主流的硬件生产商的认可成为他们产品的默认固件。去年,LinuxBoot 已经被 Linux 基金会接受并纳入[4]开源家族。
这个项目最初是由 Ron Minnich 在 2017 年 1 月提出,它是 LinuxBIOS 的创造人,并且在 Google 领导 coreboot[5] 的工作。
Google、Facebook、Horizon Computing Solutions[6]、和 Two Sigma[7] 共同合作,在运行 Linux 的服务器上开发 LinuxBoot 项目[8](以前叫 NERF[9])。
它的开放性允许服务器用户去很容易地定制他们自己的引导脚本、修复问题、构建他们自己的 运行时环境[10] 和用他们自己的密钥去 刷入固件[11],而不需要等待供应商的更新。
下面是第一次使用 NERF BIOS 去引导 Ubuntu Xenial[12] 的视频:
我们来讨论一下它与 UEFI 相比在服务器硬件方面的其它优势。
LinuxBoot 超越 UEFI 的优势
下面是一些 LinuxBoot 超越 UEFI 的主要优势:
启动速度显著加快
它能在 20 秒钟以内完成服务器启动,而 UEFI 需要几分钟的时间。
显著的灵活性
LinuxBoot 可以用在 Linux 支持的各种设备、文件系统和协议上。
更加安全
相比 UEFI 而言,LinuxBoot 在设备驱动程序和文件系统方面进行更加严格的检查。
我们可能争辩说 UEFI 是使用 EDK II[14] 而部分开源的,而 LinuxBoot 是部分闭源的。但有人提出[15],即便有像 EDK II 这样的代码,但也没有做适当的审查级别和像 Linux 内核[16] 那样的正确性检查,并且在 UEFI 的开发中还大量使用闭源组件。
另一方面,LinuxBoot 有非常小的二进制文件,它仅用了大约几百 KB,相比而言,而 UEFI 的二进制文件有 32 MB。
严格来说,LinuxBoot 与 UEFI 不一样,更适合于可信计算基础[17]。
LinuxBoot 有一个基于 kexec[18] 的引导加载器,它不支持启动 Windows/非 Linux 内核,但这影响并不大,因为主流的云都是基于 Linux 的服务器。
LinuxBoot 的采用者
自 2011 年, Facebook 发起了开源计算项目(OCP)[20],它的一些服务器是基于开源设计的,目的是构建的数据中心更加高效。LinuxBoot 已经在下面列出的几个开源计算硬件上做了测试:
◈ Winterfell◈ Leopard◈ Tioga Pass更多 OCP[22] 硬件在这里[23]有一个简短的描述。OCP 基金会通过开源系统固件[24]运行一个专门的固件项目。
支持 LinuxBoot 的其它一些设备有:
◈ QEMU [25] 仿真的 Q35 [26] 系统◈ Intel S2600wf [27]◈ Dell R630 [28]上个月底(2018 年 9 月 24 日),Equus 计算解决方案[29] 宣布[30] 发行它的 白盒开放式™[31] M2660 和 M2760 服务器,作为它们的定制的、成本优化的、开放硬件服务器和存储平台的一部分。它们都支持 LinuxBoot 灵活定制服务器的 BIOS,以提升安全性和设计一个非常快的纯净的引导体验。
你认为 LinuxBoot 怎么样?
LinuxBoot 在 GitHub[32] 上有很丰富的文档。你喜欢它与 UEFI 不同的特性吗?由于 LinuxBoot 的开放式开发和未来,你愿意使用 LinuxBoot 而不是 UEFI 去启动你的服务器吗?请在下面的评论区告诉我们吧。
via: https://itsfoss.com/linuxboot-uefi/
作者:Avimanyu Bandyopadhyay[34] 选题:oska874 译者:qhwdw 校对:wxy
本文由 LCTT 原创编译,Linux中国 荣誉推出