1

我正在寻找在许多 luks 磁盘上构建的 RAID BtrFS 上的 root。我通常在 Debian 或 Ubuntu 上通过预先准备好我的磁盘,然后在这些磁盘中运行安装来执行此操作。最后,我需要转入新系统来修改 crypttab 和 fstab。

我正在尝试使用 Anaconda 安装程序的 Qubes 做同样的事情。当我进入 GUI 分区程序时,BtrFS 出现在“未知”下拉列表下,但如果我尝试将“挂载点设置为“/”然后“更新设置”,则会出现“您必须在根设备。”(但那里已经有一个。)如果我改用“+”,我会被告知“没有足够的可用空间用于精简配置。”安装程序显然对可用空间的大小感到困惑:“可用空间 992.5 KiB,”“总空间 238.47 GiB。”事实上,RAID 的 BtrFS 中有 932.35GiB。

如果我只是打开 luks 设备,但没有放 FS,那么所有 /dev/mapper/luks* 设备都会出现在“未知”下拉列表下的分区器中,但选择“新挂载点将使用以下分区方案:Btrfs ” 没有任何设备允许我关联挂载点。它是灰色的,或者如果我尝试使用“+”并使用单个磁盘对其进行测试,它会返回错误“没有足够的磁盘用于单个磁盘”。(但我那里有多个 LUKS 磁盘!)

尝试不进行任何事先格式化,无论是 luks 还是 Btrfs,我发现分区程序无法处理裸磁盘。它需要一个分区表(我不需要)。

有没有人有办法解决这个问题?

编辑:这个安装程序似乎存在严重问题

4

1 回答 1

1

所有这一切的答案似乎是:“不要试图与蟒蛇战斗,因为你输。” 尽管可以访问 root 终端(Control-Alt-F1 到达 tmux 会话,Control-b 2,到达具有 root 权限的终端),但您必须返回到图形安装程序,该安装程序太有限,无法取得任何进展,尤其是使用BtrFS 磁盘。Anaconda 认为 BtrFS 不是一个文件系统,而是一个设备,这使得问题无法解决。

解决方案是进行虚拟安装,然后修改所有磁盘,根据需要编辑 crypttab、fstab、/etc/default/grub。然后旋转并运行dracut -fgrub2-mkinstall如果需要的话。此外,如有必要,grub2-install.

BtrFS 在此过程中的一个优势是,它可以避免必须使用 live-DVD 或 Anaconda 的救援外壳来在“静止”的系统中进行更改,然后转入运行dracut等。您只需btrfs device add将设备添加到根目录,然后添加btrfs device remove原始设备。然后对原始分区进行相关更改,然后反转add/ remove。因此,可以通过从一个磁盘到另一个磁盘来回移动来进行更改。

于 2020-07-10T11:57:35.203 回答