Arch-Linux

使用 Grub 的 LUKS 之上的 LVM

  • April 14, 2019

我想做什麼?

使用 LVM 在外部硬碟驅動器 (sdb) 上的 LUKS 頂部安裝帶有完整系統加密(無引導和媒體分區)的 Arch,使用:http ://suddenkernelpanic.blogspot.com/2013/03/arch-linux-lvm-on -top-of-luks-2013-style.html

我的問題是什麼:

系統啟動 grub,似乎在哪裡可以找到根目錄有些混亂

錯誤:未找到設備 ‘uuid=f7153c4b-e6ea-48a2-9ee1-bf38c037173d’。跳過 fsck

錯誤:無法找到根設備 ‘uuid=f7153c4b-e6ea-48a2-9ee1-bf38c037173d’

我偏離本教程的地方

  1. 正如教程所建議的那樣,我使用 Grub 而不是 Syslinux(這似乎是癥結所在),而且 Grub 的解決方案真的很模糊
  2. 我的分區方案包含一個額外的 FAT32 分區,該分區不參與加密(似乎與問題無關)

/etc/default/grub 上的問題:

(我覺得這就是問題所在)

從我讀過的內容來看,我需要特別更新這個文件中的幾個地方:

GRUB_CMDLINE_LINUX="root=/dev/mapper/lvmpool-root cryptdevice=/dev/sdb2:crypt ro"

我應該取消註釋:

GRUB_DISABLE_LINUX_UUID=true

關於問題/etc/mkinitcpio.conf

我應該按如下方式添加鉤子

HOOKS="... encrypt lvm2 ... filesystems ..."

這是我的 root 的 fstab 條目

<filesystem>
/dev/mapper/lvmpool-root                                                 
UUID=f7153c4b-e6ea-48a2-9ee1-bf38c037173d / ext4 rw,relatime,data=ordered   0 1

目前的解決方法

我仍然可以使用該系統,因為在它出錯後,它會將我放入一個恢復 shell,我可以簡單地執行以下操作:

cryptsetup luksOpen /dev/sdb2 crypt 
enter password

然後退出恢復外殼,它會讓我回到正常的拱形登錄提示符。這不會那麼糟糕,如果它不是那麼耗時……(在啟動時永遠出錯,比如 20 秒)

我嘗試過的其他資源

我也用過:

  • wiki.archlinux.org/index.php/Beginners%27_guide
  • wiki.archlinux.org/index.php/Gr … 加密
  • wiki.archlinux.org/index.php/Dm … oot_loader
  • wiki.archlinux.org/index.php/Dm…VM_on_LUKS

您的問題似乎在於:crypt作為卷組/dev/sdb2和使用卷組lvmpool-名稱作為 root 的參數的區別。

GRUB_CMDLINE_LINUX="root=/dev/mapper/lvmpool-root cryptdevice=/dev/sdb2:crypt ro"

這裡的例子:

cryptdevice=/dev/partition:MyStorage root=/dev/mapper/MyStorage-rootvol

有匹配:MyStorageMyStorage-。該頁面專門針對grub(而不是 Syslinux),LVM 位於 LUKS 之上。所以我會按照那個設置。

你有一個額外的,未加密的分區,沒關係。

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