我想在 MD RAID 1 + LVM 设置之上放置一个 EFI 系统分区。因此 ESP 将是 MD RAID 设备之上的逻辑卷。关于这是否可能,我听到过各种各样的说法。有人做过吗?如果是的话,存在哪些问题(如果有)?
计划是进行标准的 Debian 延伸安装。 GRUB 2,除 Debian 之外没有其他操作系统。并且可能只有一次安装。
AU 上有人问过这个问题: EFI系统分区可以RAID吗?。但人们的反应褒贬不一且不明确。
我不清楚的一个重要方面是 - 需要什么软件来读取 ESP?我还以为是GRUB呢但我读过的一些讨论似乎表明情况并非如此——主板的固件也需要读取 ESP。我想这是有道理的。 MB 固件需要能够读取磁盘上的某些内容(可能是 GRUB 初始化信息),以便启动引导过程。
但这似乎在某些情况下对某些人有效,而在其他情况下则无效。那么,是否可以得出这样的结论:某些主板具有可以读取 MD RAID 之上的 LVM 卷上的数据的固件?
答案1
您链接到的问题有一个公认的答案,我认为它提供了很好的建议。
您可以使用驱动器末尾的元数据(--metadata=1.0
在 中mdadm
)执行 RAID1,这样它将在普通文件系统中查找任何不支持 RAID 的内容。
但是,这仅适用于严格的只读访问。仅写入 RAID 的一侧,您将从 RAID 层获得随机结果(取决于它选择从中读取数据的驱动器),从而产生一致性问题。
可能适用于引导,因为它通常是只读的。
使用 LVM,事情会变得更加复杂。 LVM 在开始时就有元数据,任何文件系统都位于 LVM 选择的偏移量处。实现这一目标的唯一方法是使用 hack——比如创建一个分区表来映射 LVM 空间中的单个 LV——或者反向创建一个设备映射,该设备映射又充当 LVM 的 PV,从而强制将 LVM 元数据移动到毕竟驱动器结束了。
因此,通过一些创造力和努力,您可以创建一个全驱动器 RAID、全驱动器 LVM,同时还可以让不支持 RAID-LVM 的用户看到一个常规分区表。这是可能的。但你最终会得到如此复杂的设置,远远不符合标准,而最大的问题是,这一切有什么意义呢?
对于基于软件的 RAID,RAID 不覆盖分区表、引导加载程序等内容是很正常的。只需将引导加载程序安装到每个驱动器即可达到相同的效果。