在新的Ubuntu Server 20.04 上,我无法使用 "RAID + LVM" 创建加密分区。安装过程正确完成,但在启动时没有找到 GRUB,我被重定向到"GRUB minimum bash"。
在这里,我将描述我在安装过程中是如何进行的。首先,我使用“GParted Live”准备了两个硬盘驱动器(在我的情况下是 SSD) (我使用 GParted ISO 创建了一个可启动的 USB):
- 512 MB 分区,命名为“/bios/efi”,fat32,标记为“boot, esp”;
- 10 GB/分区,命名为“/”,ext4,标记为“raid”;
- /home 分区,命名为“/home”,ext4,标记为“raid”;
然后,在 Ubuntu Server 20.04 安装期间使用“自定义存储布局” :
我检查了两个磁盘都“添加为启动盘”
然后使用“创建软件 RAID (md)”我创建了一个新的“md0”卷(始终处于活动状态)
然后我创建了另一个“RAID md”卷(始终处于活动状态)
此时我选择了“创建卷 LVM”并选择了“md0”分区并为其分配了密码。
我再次选择了“创建卷 LVM”并选择了“md1”分区并分配了密码。
现在我选择“vg0”分区并选择“添加 GPT 分区”,然后选择“创建逻辑卷”并挂载在“/”上
对于“vg1”分区,我选择“添加 GPT 分区”,然后选择“创建逻辑卷”并挂载在“/home”上
之后我选择“完成”并完成安装
重新启动后,操作系统进入“GRUB 最小 bash”
怎么了?
谢谢
我遇到了类似的问题。在 VM 中的各种排列都没有运气之后,我在 Reddit 上偶然发现了这个线程,其中用户 wRAR_ 说“[Debian 安装程序] 目前不支持加密的 /boot”。Ubuntu 基于 Debian;我不知道安装程序在多大程度上相似,但我在 VM 中进行了测试,有和没有加密
/boot
的 . 两者都无法启动,显示您在问题中描述的 GRUB shell。注意:将加密区域指定为 的挂载点
/
,而不是指定单独的/boot
挂载点,意味着/boot
它将驻留在该加密/
的 .从广义上讲,这意味着,如果我们想要某种基于 RAID 的加密 LVM,有两种选择:
选项 1 - 我选择做的事情,并且对初学者更友好,因为它可以使用标准的 Ubuntu 安装程序来完成。
加密除 /boot 和 /boot/efi 之外的所有内容
所有用户数据都将被加密,但
/boot
(不仅仅是/boot/efi
)的全部内容不会。您描述的分区方案是不同的,但关键是 - 要使其正常工作 -/boot
不应驻留在加密分区上。我使用了以下分区方案:
我在 RAID1 分区方案上的加密 LVM
我能够在安装程序中完成这一切:
sda1: 512M /boot/efi
sdb1:512M /启动
sda2 & sdb2:RAID1 阵列 md0
md0:加密卷 dm_crypt-0
dm-_crypt-0:逻辑卷vg0-lv--0 for /
dm-_crypt-0: /srv 的逻辑卷 vg0-lv--1
当然,您可以在卷组中选择您喜欢的任何逻辑卷:我有一个单独的 /srv 用于服务器设置。
此设置的一个小优点是它同时使用了 512M 未加密空间 - 与 RAID1 上加密 LVM 的典型方案不同 - 仅 efi 分区未加密。这并不理想,但我对其进行了测试,它对我有用。*
选项 2:可能有一种方法可以绕过不支持加密的安装程序,方法是
/boot
退出到 shell、编辑一些配置文件并重新安装 GRUB 等等。This blog post似乎有一些说明,但我没有遵循它们。*(虽然我必须说我发现安装程序的分区菜单在某些地方有点尴尬 - 它似乎会自动抓取某些未格式化的空间,假设它可以将其用作 EFI 分区;但是我对其中的选项进行了一些“游戏”结束)
谢谢@jdurston 的回复,我可以通过这种方式安装带有 RAID 1 和加密磁盘的 Ubuntu 20.04。
我已经使用“GParted Live”准备了两个硬盘驱动器(我使用 GParted ISO 创建了一个可引导的 USB):
磁盘 1:
磁盘 2:
然后,在 Ubuntu Server 20.04 安装期间使用“自定义存储布局” :
我只选择要“添加为启动盘”的磁盘;
然后使用“创建软件 RAID (md)”,我创建了一个新的“md0”卷(始终处于活动状态),同时选择 10 GB 分区;
然后我创建了另一个“RAID md”卷(始终处于活动状态),同时选择剩余的 222 GB 分区;
然后我选择了“创建卷 LVM”,我选择了 512 MB 分区(以前称为 /boot),我没有加密它;
我再次选择了“Create Volume LVM”,然后选择了“md0”分区,并为其分配了密码;
然后我再次选择了“创建卷 LVM”并选择了“md1”分区并为其分配了密码;
我选择了“vg0”分区并选择了“添加GPT分区”,然后我选择了“创建逻辑卷”并挂载在“/boot”上;
然后我选择了“vg1”分区并选择了“添加GPT分区”,然后我选择了“创建逻辑卷”并安装在“/”上;
我选择“添加 GPT 分区”的“vg2”分区也是如此,我选择了“创建逻辑卷”并安装在“/home”上;
之后我选择“完成”并完成安装;
重启后 GRUB 工作正常!
我附上了 Ubuntu 20.04 安装的“存储配置”中的两张图片,在第一张图片中您将看到创建 RAID 之前的情况(在 GParted 模块之后),第二张图片中您将看到点击“完成”之前的最终情况”。
图 1,在 RAID 创建之前:
图 2,创建 RAID 后:
我提出了一种不同的方法。
确实,您不能首先将 grub 配置为从加密分区激活和引导(尽管您可以 insmod 并配置 grub 来这样做......)。因此,我建议如下配置方案:
md0: 带有 LUKS 的 LVM(在 VG 级别,我找不到使用安装程序在 LV 级别执行此操作的方法)/、/var、...
md1: /boot(直接启动到分区)
通过这样做,您可以为 /boot 和加密分区提供不同的分区/RAID 配置。之后不要忘记在 sdb 上安装 grub,以防你的 sda 失败。