经过两年的发展 新的稳定版 GNU GRUB 2.06 已经发布 (GRand 统一引导加载程序)。 在这个新版本中 提出了一些改进,尤其是各种错误修复 其中突出的是对解决证书吊销问题的 SBAT 的支持,以及对 BootHole 的必要更正。
对于不熟悉这个多平台模块化引导管理器的人,您应该知道 GRUB 支持多种平台,包括带BIOS的主流PC、IEEE-1275平台 (基于 PowerPC / Sparc64 的硬件)、EFI 系统、RISC-V 和 MIPS 兼容的龙芯 2E 处理器硬件、Itanium、ARM、ARM64 和 ARCS (SGI) 系统,使用免费 CoreBoot 包的设备。
GRUB 2.06 主要新特性
在这个新版本中 GRUB 2.06 添加了对 LUKS2 磁盘加密格式的支持,它与 LUKS1 的不同之处在于简化的密钥管理系统、使用大扇区的能力(4096 而不是 512,减少解密期间的负载)、使用符号分区标识符以及元数据备份工具,能够自动从如果检测到损坏,则为副本。
还 添加了对 XSM 模块的支持 (Xen 安全模块)允许您为 Xen 管理程序、虚拟机和相关资源定义额外的限制和权限。
另外, 已实施锁定机制, 类似于 Linux 内核中的一组类似限制。 该锁会阻止可能的 UEFI 安全引导绕过路径,例如,拒绝访问某些 ACPI 接口和 MSR CPU 寄存器,限制 PCI 设备使用 DMA,阻止从 EFI 变量导入 ACPI 代码,并且不允许 I/ O 端口操作。
另一个突出的变化是 添加了对 SBAT 机制的支持 (UEFI Secure Boot Advanced Targeting),它解决了引导加载程序用于 UEFI 安全引导的证书吊销问题。 SBAT 涉及添加新的元数据,该元数据经过数字签名,也可以包含在 UEFI 安全启动的允许或禁止组件列表中。 此元数据允许撤销操作组件的版本号,而无需为安全启动重新生成密钥,也无需生成新签名。
, 其他突出的变化 这个新版本 GRUB 2.06 的:
- 对短 MBR 间隙(MBR 和磁盘分区开头之间的区域;在 GRUB 中它用于存储不适合 MBR 扇区的引导加载程序的一部分)的支持已被删除。
- 默认情况下,os-prober 实用程序是禁用的,它会从其他操作系统中搜索引导分区并将它们添加到引导菜单中。
- 由各种 Linux 发行版准备的反向移植补丁。
- 修复了 BootHole 和 BootHole2 漏洞。
- 已经实现了使用 GCC 10 和 Clang 10 进行编译的能力。
最后 如果您有兴趣了解更多信息 关于这个新版本,您可以查看详细信息 在下面的链接中。
如何在 Linux 上安装新版本的 Grub?
对于那些有兴趣能够在他们的系统上安装新版本 grub 的人,他们应该知道目前这个新版本(从文章的写作中)没有任何 Linux 发行版可用的预编译包。
所以目前能够获得这个新版本,唯一可用的方法是下载它的源代码并编译它。
源代码可以从 以下链接。
现在要执行编译,我们必须打开一个终端,在其中我们将自己定位在我们下载源代码的文件夹中,我们将输入以下命令:
zcat grub-2.06.tar.gz | tar xvf -cd grub-2.06
./configure
make install