Menu Close
Settings Close

Language and Page Formatting Options

Red Hat Training

A Red Hat training course is available for RHEL 8

8.6.5. 查看 DM 完整性信息

当您创建有完整性的 RAID LVS 或者在现有 RAID LV 中添加完整性时,使用以下命令查看有关完整性的信息:

# lvs -a <volume-group>

这里的 <volume-group> 是包含有完整性的 RAID LV 的卷组名称。

以下示例显示了在 test-vg 卷组中创建的 test-lv RAID LV 的信息。

# lvs -a test-vg
  LV                        VG      Attr       LSize   Origin                   Cpy%Sync
  test-lv                   test-vg rwi-a-r--- 256.00m                          2.10
  [test-lv_rimage_0]        test-vg gwi-aor--- 256.00m [test-lv_rimage_0_iorig] 93.75
  [test-lv_rimage_0_imeta]  test-vg ewi-ao----   8.00m
  [test-lv_rimage_0_iorig]  test-vg -wi-ao---- 256.00m
  [test-lv_rimage_1]        test-vg gwi-aor--- 256.00m [test-lv_rimage_1_iorig] 85.94
  [test-lv_rimage_1_imeta]  test-vg ewi-ao----   8.00m
  [test-lv_rimage_1_iorig]  test-vg -wi-ao---- 256.00m
  [test-lv_rmeta_0]         test-vg ewi-aor---   4.00m
  [test-lv_rmeta_1]         test-vg ewi-aor---   4.00m

同步

当您创建一个带有完整性的 RAID LVS 或者在现有 RAID LV 中添加完整性时,我们建议您在使用 LV 前等待完整性同步和 RAID 元数据完成。否则,在后台进行的初始化可能会影响 LV 的性能。Cpy%Sync 列指示顶级 RAID LV 和每个 RAID 镜像的同步进度。RAID 镜像在 LV 列中通过 raid_image_N 表示。请参阅 LV 列,以确保同步进度对于顶级 RAID LV 和每个 RAID 镜像都显示为 100%

使用完整性的 RAID 镜像

Attr 列中列出的属性中的 g 属性表示 RAID 镜像使用完整性。完整性校验和保存在 _imeta RAID LV 中。

要显示每个 RAID LV 的类型,请在 lvs 命令中添加 -o+segtype 选项:

# lvs -a my-vg -o+segtype
  LV                       VG      Attr       LSize   Origin                   Cpy%Sync Type
  test-lv                  test-vg rwi-a-r--- 256.00m                          87.96    raid1
  [test-lv_rimage_0]       test-vg gwi-aor--- 256.00m [test-lv_rimage_0_iorig] 100.00   integrity
  [test-lv_rimage_0_imeta] test-vg ewi-ao----   8.00m                                   linear
  [test-lv_rimage_0_iorig] test-vg -wi-ao---- 256.00m                                   linear
  [test-lv_rimage_1]       test-vg gwi-aor--- 256.00m [test-lv_rimage_1_iorig] 100.00   integrity
  [test-lv_rimage_1_imeta] test-vg ewi-ao----   8.00m                                   linear
  [test-lv_rimage_1_iorig] test-vg -wi-ao---- 256.00m                                   linear
  [test-lv_rmeta_0]        test-vg ewi-aor---   4.00m                                   linear
  [test-lv_rmeta_1]        test-vg ewi-aor---   4.00m                                   linear

完整性不匹配

有一个增量的计数器,它计算在每个 RAID 镜像上检测到的不匹配数。要查看特定 RAID 镜像的完整性所检测到的数据不匹配,运行以下命令:

# lvs -o+integritymismatches <volume-group>/<logical-volume>_raid-image_<n>

其中

<volume-group>
指定要在其中创建 RAID LV 的卷组名称。
<logical-volume>
指定您要创建的 LV 的名称。
<n>
指定您要查看完整性不匹配信息的 RAID 镜像。

您必须为每个要查看的 RAID 镜像运行该命令。在以下示例中,我们将查看 test-vg/test-lv 下来自 rimage_0 的数据不匹配。

# lvs -o+integritymismatches test-vg/test-lv_rimage_0
  LV                 VG      Attr       LSize   Origin                      Cpy%Sync IntegMismatches
  [test-lv_rimage_0] test-vg gwi-aor--- 256.00m [test-lv_rimage_0_iorig]    100.00                 0

我们可以看到,完整性还没有检测到任何不匹配的数据,因此 IntegMismatches 计数器会显示零(0)。

内核消息日志中的完整性不匹配

您还可以在内核消息日志中查找数据完整性信息,如下例所示。

内核消息日志中的 dm-integrity 不匹配示例

device-mapper: integrity: dm-12: Checksum failed at sector 0x24e7

内核消息日志中的 dm-integrity 数据更正示例

md/raid1:mdX: read error corrected (8 sectors at 9448 on dm-16)