附录 D. LVM 卷组元数据

卷组的配置详情被称为元数据。默认情况下,卷组的每个物理卷元数据区域中均保存完全相同的元数据副本。
如果卷组包含很多物理卷,那么有很多元数据的冗余副本不是很有效。可以使用 pvcreate 命令的 --metadatacopies 0 选项创建没有任何元数据副本的物理卷。选择物理卷中包含的元数据副本数目后就无法再进行修改。选择零副本将在修改配置时提高更新速度。注意:虽然任何时候每个卷组必须至少包含一个带元数据区域的物理卷(除非您使用高级配置设置允许您在文件系统中保存卷组元数据)。如果将来要分割卷组,那么每个卷组至少需要一个元数据副本。
核心元数据以 ASCII 格式保存。元数据区域是一个环形缓冲。新的元数据会附加在旧的元数据之后,然后会更新其起始指针。
可使用 pvcreate 命令的 --metadatasize 选项指定元数据区域的大小。对于包含数百个物理卷和逻辑卷的卷组来说,默认大小可能太小。

D.1. 物理卷标签

默认情况下,pvcreate 命令会在第二个 512 字节扇区放置物理卷标签。这个标签可选择性地放在前四个扇区中的任意一个,因为扫描物理卷标签的 LVM 工具会检查前四个扇区。物理卷标签以字符串 LABELONE 开始。
物理卷标签包含:
  • 物理卷 UUID
  • 以字节为单位的块设备大小
  • 以 NULL 结尾的数据区域位置列表
  • 以 NULL 结尾的元数据区域位置列表
元数据位置以偏移和大小(单位:字节)形式保存。标签中有大约 15 个位置的空间,但 LVM 工具目前仅使用 3 个位置:即单数据区域以及最多两个元数据区域。