手头上的问题

手头上的问题

我有一个像这样的设置:

- sda1 /boot (shared)
- sda5 (Kali: luks encrypted LVM)
  - home /home
  - root /
  - swap swap
- sda6 (Qubes(xen): luks encrypted LVM)
  - root /
  - swap swap
  - ... (a bunch of virtual machine drives)

我的问题是:如何设置 grub 来引导到任一发行版。

里面/bootgrub/grub2/。 Grepping 这些目录中的两个配置文件,看起来grub/是 kali 配置,grub2/是 Qubes 配置。

我第二次安装了 Qubes,看起来已经将 grub2 写入了 MBR,并且 Qubes 可以正常启动。

Qubes 的多重启动指南并不是特别有用,它解释了如何 chroot 回到其他分区并运行一些命令。我做到了(在一些帮助后这里),但最终只是重新安装了 Kali 引导加载程序,但我无法引导到 Qubes。

我尝试从 Kali 挂载 Qubes 卷并运行 os-prober/grub-update 以使 Qubes 再次启动,但无济于事,它似乎被 Xen 弄糊涂了,所有 VM 卷和事情都变得很奇怪*。

我觉得在这一点上继续无指导只会变成一个无法恢复的混乱,虽然我可以简单地重新安装一个或两个操作系统,而且我认为我可以从那里找到我的路,但我认为尝试解决 grub 会给我带来好处更好地理解 Linux 启动过程。

如果它被证明有帮助,我会备份安装 Qubes 的状态/boot/grub//boot/grub2/安装时的状态。

经过研究,我了解到共享未加密的启动可能不是解决我的问题的最佳解决方案,因此如果我可以在修复此问题时将每个发行版的启动迁移到加密分区,那就是一个好处。

就我的经验水平/我需要多少指导而言,我并不是特别熟悉 Linux 的这个角落,但来自 Mac 的我相当精通 Unix 终端世界,并且我已经在这方面做了相当多的工作。 linux 服务器终端也有,但从来不需要接触 grub 或引导过程。

*(它命名 Qubes 菜单项Kali w. Xen Hypervisor,并拒绝启动任一发行版,在输入任一发行版的 luks 密码后挂在“找到目标卷”处。它还在打开 grub 之前要求输入 luks 密码,grub 在 Qubes 和 Kali 单独启动下屏幕上没有。)

答案1

我将提供几个有关如何进行操作的链接修复 grub, 配置Qubes 的多重启动,具体指导如何安装 Qubes 操作系统与另一个操作系统一起,以及有关如何操作的指南为 Qubes 创建 VM 模板。我建议您在采取行动之前仔细阅读所有内容。

手头上的问题

如果我是对的,您的目标是拥有具有全磁盘加密功能的 Kali Linux 和 Qubes 操作系统的多重启动设置。您遇到的问题是因为安装了 2 种不同类型的 GRUB,因此您无法启动。我们需要纠正这个问题。根据 Qubes OS 官方文档,您是对的,/boot不建议共享未加密的文件。

我相信您的问题可以通过执行两件事中的一件来解决。

  1. 从头开始,设置双启动。
  2. 为 Qubes 操作系统创建 Kali 虚拟机。

1.从头开始

最简单的方法是为您提供如何从头开始进行设置的指南。据我所知,您必须共享,/boot但如果您想要完整的整个磁盘加密,我可以给出的最佳建议是使用两个单独的磁盘。这也将是最简单的,因为您只需在一个驱动器上安装操作系统,然后在另一个驱动器上安装另一个操作系统,并且您也可以简单地让 grub 引用另一个驱动器。或者,如果这不起作用,则可以通过 BIOS 切换启动到哪个驱动器。

如果您必须在两个操作系统之间共享驱动器,您可以遵循本指南。

首先安装 Kali

确保您拥有最新.isoKali.org。验证校验和并将其像平常一样写入闪存驱动器。然而,在安装过程中,您将采取一些不同的步骤。

  • 正常完成安装过程,直到到达分区磁盘部分。选择手动选项并创建/boot分区,如下所示:

引导分区

  • 接下来您需要创建 Kali 将使用的分区。然后,您可以通过选择“配置加密卷”选项对其进行加密。此时您应该有三个分区: a /boot,一个要加密并安装 Kali 的分区,大部分磁盘留给 Qubes OS。

配置加密

  • 选择您将用作 Kali Linux 的分区。

设备选型

  • 完成配置加密卷并对分区进行分区的过程/。将更改写入磁盘并忽略有关没有交换分区的警告。共享交换也同样存在风险。您可以将加密卷拆分为/交换分区,但我假设您有足够的 RAM 空间,想要使用 Qubes 操作系统。

写入更改

  • 照常继续,直到要求您安装 GRUB。不要将 GRUB 安装到主引导记录,而是将其安装到/bootat/dev/sda1而不是/dev/sda.

蛴螬

  • 至此您已经完成了Kali Linux的安装。此时您将无法启动。在修复此问题之前,我们将首先安装 Qubes 操作系统。

安装 Qubes 操作系统

我指的是本指南对于这部分安装过程。

  • 移除 Kali Linux USB 驱动器并插入 Qubes OS 驱动器。
  • 选择安装 Qube。单击“安装目标”并确认已选择您的硬盘驱动器。然后单击“完成”。

安装

  • 只要它提出在磁盘的可用空间中安装 Qubes,Qubes 安装程序就会处理其余的分区。选择“自动将我的 Qubes 安装配置到我选择的磁盘并返回主菜单”,并确保也选中“加密我的数据”。单击继续。

  • 输入 Qubes 磁盘加密密码两次,然后单击保存密码。

  • 然后单击“开始安装”,等待 Qubes 安装。完成后,重新启动。

修复 GRUB 以允许双引导

继续使用导游我之前提到过,我们可以按照以下步骤来实现多重引导。

你还没有完成。这次当您打开计算机时,它将自动启动到 Qubes。现在我们需要添加卡利语作为启动选项。

当您第一次启动 Qubes 时,您需要按照设置向导进行操作。完成此操作并登录 Qubes 后,在 dom0 中打开终端(在 KDE 中,单击开始按钮、系统工具 > Konsole)。然后使用 vim (或 nano)编辑 /etc/grub.d/40_custom:

sudo vim /etc/grub.d/40_custom

将其添加到底部:

menuentry "Kali" {
set root=(hd0,1)
chainloader +1
}

然后重新安装grub:

sudo grub2-mkconfig -o /boot/grub2/grub.cfg
sudo grub2-install /dev/sda

然后重新启动计算机。

完成所有这些操作后,您应该会看到一个带有以下选项的 GRUB 菜单:

  • Qubes,带有 Xen 虚拟机管理程序
  • Qubes 的高级选项(带有 Xen 虚拟机管理程序)
  • 卡利语

当您启动到 Qubes 时,它会询问您的 Qubes 加密密码,当您启动到 Kali 时,它会询问您的 Kali 加密密码。

2. 为 Qubes OS 创建 Kali VM 模板

这是一个替代选项。您可以在磁盘上安装 Qubes OS,使用全磁盘加密,启动到 Qubes OS 后,您可以创建一个基于 Kali Linux 的新模板 VM,并以这种方式在 VM 中使用 Kali。本指南是有关如何执行此操作的良好信息来源。它指的是 Arch Linux,但在最后的步骤中,您使用 Kali,而不是为 Arch 设置。

不要忘记参考Qubes 操作系统文档了解有关 Qubes 操作系统虚拟化的更多信息。

然而,这个解决方案存在将 Kali 作为虚拟机运行的问题,这不是您寻求帮助的问题。

结论

如果您已经走到这一步,感谢您的坚持。请随时向我询问任何澄清,如果我有任何错误,我将不胜感激。

共享未加密的启动是有风险的,但如果您保持计算机的物理安全并采取预防措施,您应该会很好。安全需要分层进行。加密可以保护您,但如果您运行受损的软件,则没有任何保证。

祝你好运!

答案2

如果您想要设置相同的安装,Kemotep 的答案是一个很好的起点。最后,要修复我的安装,只需将 grub 1 重新安装到 MBR 后将菜单项从 qubes grub2 配置复制到 kali grub 配置即可。我认为反之亦然。

Qubes 必须使用旧版兼容 grub,因为驱动器编号从 0 开始。

我将 kemotep 的答案标记为已接受,因为它更有帮助,但如果您遇到了与我相同的问题,如果您愿意在 grub 中闲逛一下,那么可能会更简单。

相关内容