上周我买了一台全新的戴尔 M3800,预装了 Ubuntu 14.04。但是,由于公司有磁盘加密策略,我需要重新安装启用了加密的 Ubuntu。但是,当尝试使用创建的戴尔恢复映像在 SSD(包含预装的操作系统)上重新安装加密时,安装失败。我还尝试使用 Ubuntu 14.04.3 Live-CD(在 USB 上),但 Ubiquity 崩溃了。我现在得出的结论是,这是由于我的额外硬盘(未格式化)位于 /dev/sda 上。
经过多次头痛和反复试验后,我发现 ubiquity 在尝试运行“grub-install /dev/sda”时崩溃了(尽管我已告诉它在 /dev/sdb 上安装 FDE)。我知道,如果我选择高级安装,我可以选择将 /boot 放在我想要的任何位置(例如在 /dev/sdb 上的 EFI 分区上)。但是,我是否也可以在 ubiquity 的高级安装中创建加密分区(/、swap),以便它获得与我只插入一个磁盘相同的结构(即使用 FDE 安装的 ubuntu 的默认结构)?如果在安装之前手动准备分区是唯一的选择,那么当然也非常欢迎这样的答案!
谢谢!
根据 @oldfreds 的建议,在关注普遍性错误之前,我还有一个粘贴箱关于从戴尔恢复 iso 安装加密失败的启动信息。
答案1
如果以 UEFI 启动模式将 Ubuntu 安装到第二个驱动器(无论是内部驱动器还是外部驱动器)作为完整安装,您需要将驱动器视为 sda gpt,并使用 ESP - efi 系统分区进行分区,使用启动标志进行 FAT32 格式化,大小为 100 到 500MB。您还需要在安装 Ubuntu 的驱动器上安装 ESP,但在安装过程中可能不会使用它。如果 sda 驱动器出现故障/被移除或出现其他问题,最好将 ESP 启动文件复制回安装驱动器。
Grub 似乎只想将其 UEFI 启动文件安装到被视为 sda 的驱动器上的 ESP。它甚至可能在安装过程中说安装到 sdb,但如果 sda 上没有 ESP,则会出错。在安装闪存驱动器被视为 sda 的几个系统上,这可能是一个更大的问题。
一旦开始使用 UEFI,最好所有驱动器都使用 gpt,并且每个安装的驱动器在驱动器开头附近都有一个 ESP 分区。由于我还建议在每个驱动器上进行安装,因此每个驱动器都应该有一个 ESP,即使只是为了将来使用。
可移动驱动器的更新:
两个驱动器或任何第二个、外部或 sda 以外的其他驱动器。请注意,在 UEFI 模式下完全安装到 sda 以外的任何驱动器都会出现一些问题。Grub 仅安装到 sda 上的 ESP - efi 系统分区。然后您必须将文件复制到您的安装中。
而且 Ubuntu 的 UEFI grub 仅安装到 sda 上的 ESP,而不是外部驱动器,也不是 /EFI/Boot/bootx64.efi。对于将我的 PC UEFI 完整安装到闪存驱动器,我手动将 sda 的 ESP 上的 /EFI/ubuntu 复制到闪存驱动器的 ESP。然后再次将其复制到 /EFI/Boot 并将 shimx64.efi 重命名为 bootx64.efi。然后我更新了 fstab 以使外部驱动器上的 ESP 具有正确的 UUID。
完整安装中的 grub 版本是硬编码的,用于在 /EFI/ubuntu 中找到 grub 的其余部分,因此需要两个副本。有方法可以直接将 grub 安装为 bootx64.efi,但您必须手动维护 grub.cfg。
如果您不想在内部驱动器上有 UEFI 条目,则在将条目复制到外部驱动器后: