为什么 LVM 元数据备份到 /etc/lvm 而不是 /boot?

为什么 LVM 元数据备份到 /etc/lvm 而不是 /boot?

我最近看到的问题让我思考了这一点:

  • 如果引导加载程序限制通常会导致/boot位于 LVM 之外,那么为什么这不是 LVM 元数据备份的目标?

如果我们要为根文件系统的 VG 恢复 PV,而不是让它在救援模式下可供访问,那么将其放在下面/etc似乎会出现先有鸡还是先有蛋的困境。

另外,如果大多数安装程序创建根文件系统 LVM,那么他们似乎几乎是故意造成这种情况(而不是发行版从/etc/lvm/archive下面的目录创建符号链接/boot或修补工具以在 中查找 LVM 信息/boot)。

这并不是一个真正的问题(我通常可以将其从备份中取出),但似乎将其放在下面/boot更理想。我想知道将其定位在/etc.

答案1

为什么会在/boot?启动不需要这些文件。/boot听起来不是一个好的选择,因为在许多系统上,它没有安装或安装为只读,如果它们甚至有一个单独的/boot分区,而许多系统没有,那么 GRUB2 支持各种东西。

同时,这些文件对于消除正在运行的系统中的事故很有用,因此它们应该位于标准树中易于访问的位置。不管是这样/etc还是/var怎样。

至于先有鸡还是先有蛋的困境,无论如何你都应该有备份。

如果您需要这些文件,您可以在原始数据中找到它们,因为它们具有独特且信息丰富的标头。

# Generated by LVM2 version 2.02.99(2) (2013-07-24): Wed Aug 28 08:54:15 2013

碎片仍然可能是一个问题,但文件通常足够小,可以不碎片化,即使在碎片情况下,您也可以通过检查文件语法来找到正确的碎片。

您康复的机会很大。当然,进行备份要简单得多。

如果您绝对想将文件移动到其他地方,则始终可以使用符号链接或设置LVM_SYSTEM_DIR.

答案2

LVM 没有兴趣关注/boot.该分区甚至不必在内核更新之外安装。 /var/backup然而,这是更合乎逻辑的位置,我希望 LVM 将移动到它作为/etc只读的一部分。

(回应评论)对内核的控制非常重要,系统管理员不会/boot永久保持安装状态,并且虚拟化环境通常将其完全隐藏在操作系统之外。

即使您可以假设该文件系统/boot在 LVM 之外可用,并且您已经提出了一个场景,其中该文件系统将在任何损坏元数据区域的事件中幸存下来,您的建议仍然是一种进行灾难恢复的非常特别的方法。默认每个 PV 有两个元数据区域可能不会有什么坏处(Gentoo 做到了并解决了错误),但特殊情况下的 LVM 备份会转到一个不寻常的位置,与/etc大多数情况不同/var,该位置不太可能被异地复制会。

相关内容