Debian

使用加密根安裝 Debian:安裝程序看不到 EFI /boot 分區

  • February 9, 2017

我正在嘗試使用 Debian 安裝程序(對於 Stretch-rc1)進行我認為是加密/分區的非常標準的設置和未加密的設置。/boot/boot通過選擇選項創建EFI System Partition,因為這是一個 UEFI 系統。然後我創建了一個加密的 LUKS 卷並將根文件系統放在那裡。儘管所有這些都是使用安裝程序完成的,但 GPT 和未格式化的分區首先是使用 fdisk 創建的。

當我嘗試完成將更改寫入磁碟時,出現錯誤:

加密配置失敗

您已選擇要儲存在加密分區上的根文件系統。此功能需要一個單獨的 /boot 分區,核心和 initrd 可以儲存在該分區上。您應該返回並設置 /boot 分區。

我很困惑,因為我早些時候在沒有加密的情況下這樣做了,而且一切正常。查看 ESP/boot分區顯示可引導標誌已打開。也許我對 Debian 想用 ESP 做什麼有一個根本的誤解?我歡迎任何建議以使其正常工作。

我最終解決了這個問題。

基本上,我需要三個分區而不是兩個:

  1. ESP( FAT, 未加密)
  2. /boot( ext, 未加密)
  3. /(任何有效的 Linux 文件系統,已加密)

未加密的EFI系統分區 ( ESP)包含引導載入程序(例如 GRUB),而不包含核心或其 initrd/initramfs(包含核心的初始 ramdisk 映像)。引導載入程序本身無法解密和訪問根文件系統以訪問 initrd。因此 initrd 需要存在於它自己的未加密/boot分區上,格式化為ext文件系統(例如ext4),它可以被引導載入程序解包。一旦核心被解壓,它將能夠接管剩餘的引導過程來解密和掛載根文件系統。

我發現這個答案很有幫助。

引用自:https://unix.stackexchange.com/questions/340466