根分区和 UEFI 的 Luks 加密

根分区和 UEFI 的 Luks 加密

我在 BIOS 中启用了 UEFI,并在机器中的单个硬盘中安装了 Ubuntu。该硬盘中有两个Linux分区:/boot/efi和/。我最近在具有相同版本 Ubuntu 的实时 USB 中通过 UEFI 启动,并使用 luksipc(一种将未加密分区转换为加密分区的工具)对 / 分区进行加密。我可以使用 cryptsetup luksOpen 成功访问加密分区,因此该过程顺利。

我的问题出在启动上。我更改了 crypttab 和 fstab 并重新生成了 initram (update-initramfs) 和 grub conf 文件 (update-grub) 以及二进制文件 (grub-install)。最后,我重新启动,但启动卡在 GRUB 命令行上。

我究竟做错了什么?我是否需要将 /boot 放在一个额外的未加密分区中,以便 GRUB 可以在 /boot 中找到它的文件(当前位于加密分区 / 中)?

答案1

是的,启动分区保持未加密状态。实际上,查看我的磁盘,您有三个分区:

  • sda1(/boot/efi,显然是GPT启动分区)
  • sda2(/boot,Linux 内核)
  • sda3(保存加密卷)

整个过程仍然安全,因为 UEFI 在设计上会检查 /boot/efi 的内容是否未更改,并且可以在启动之前检查 sda2 的内容。

相关内容