使用 luks 在 lvm 上进行双重启动

使用 luks 在 lvm 上进行双重启动

我尝试在 Thinkpad 上安装 PC-BSD 9 和 Fedora 16。我在硬盘上安装了 Fedora,使用默认的 lvm 和加密。我在 250Gb 硬盘上留下了 50GB 的“未使用空间”。当我启动 PC-BSD 的 LiveCD 时,它只能看到整个硬盘(显然),而看不到 50Gb 的未使用空间。我使用 grub2。

我的问题是:

  1. 如何在未使用的空间上安装 PC-BSD?不必在 luks 下。

  2. grub 会有问题吗?

答案1

您无法将 BSD 安装到 LVM2 卷,因此您需要缩小 LVM2 物理卷分区并创建常规分区。

记住孩子们,当你在调整分区大小等操作时,很多事情都可能出错。一定要备份,以防万一。

所有这些命令都需要 root 权限,因此请先运行su -或在它们前面加上sudo

您需要从 Fedora LiveCD 或 USB 启动,这样您当前就不会使用正在使用的设备。(从技术上讲,任何 Linux 实时媒体都可以,但 Fedora 以外的发行版通常不会默认在其实时媒体上提供 LVM 工具。)然后,启动终端。

首先,激活 LVM:

lvm vgchange -a y

接下来,确定 Unix 设备文件和最小大小。首次运行:

pvdisplay

查看该PV Name行,它应该显示类似 的内容/dev/sda2。这就是设备。还请记下大小,以便您知道将其缩小到多少。您可能还想查看所有逻辑卷的大小,以便您知道可以将其缩小到的最小值是多少。(别担心,pvresize不会让你缩小太多。;-) 要弄清楚,请运行:

lvdisplay

有了这些信息,您可以调整 LVM 物理卷的大小:

pvresize --setphysicalvolumesize <size> <device>

<size>您想要将 LVM PV 缩小到的期望大小是多少,以及<device>LVM PV 位于哪个设备上。

现在到了有趣的部分。 您必须调整 LVM PV 所在分区的大小。不幸的是,这需要从分区表中删除旧分区并重新创建,所以要小心。

首先,询问 LVM 你的 PV 中有多少个扇区:

lvm pvs --units s

请注意PSize,这是您新调整大小的 LVM PV 的扇区大小。

现在,启动parted你的硬盘:

parted <device>

您的硬盘在哪里<device>,例如,您之前使用的设备减去分区号/dev/sda

这将使您进入一个特殊的 parted shell。首先,我们要将其切换为显示扇区而不是兆字节,这样舍入错误就不会导致问题:

unit s 

打印分区布局。您可能在分区 1 上有一个小型启动分区,在分区 2 上有一个 LVM PV。

print

记下分区号和起始位置。

一旦弄清楚了 PV 分区,就将其从分区表中删除。 (这实际上并没有删除任何数据。)

rm 2

2适当的分区号在哪里?

现在,重新创建具有新大小的分区:

mkpart <partiton #> primary <start> <end>

其中<partition #><start>是您刚刚查找的分区号和起始位置。要计算<end>,以及PSize您之前找到的 到起始位置,再加上 131072 个扇区(64MB)以获得更好的测量效果。

切换回 GB 并再次检查布局。现在您应该有大约 50MB 的可用空间!

unit GB
print

现在您可以从 LiveCD 重新启动,验证 Fedora 是否仍然有效,然后继续在空白处安装 BSD。

*感谢此 FedoraSolved 条目它帮助我制定这些说明而没有遗漏任何内容。

相关内容