6.3. 修复 LVM 镜像错误
这部分提供了一个修复示例,即 LVM 镜像的一个分支失败,是因为物理卷的基本设备死机。当一个镜像分支失败时,LVM 将镜像卷转换成线性卷,并在没有镜像冗余的之前继续进行操作。在那个时候,您可以在系统中添加一个新的磁盘来替换物理设备,并重建镜像。
以下命令创建将用于镜像的物理卷。
以下命令创建卷组
vg
和镜像卷 groupfs
。
您可以使用
lvs
命令确定镜像卷、用于镜像分支的基本设备以及镜像分支的布局。请注意:在第一个示例中,镜像还没有被完全同步,您应该在 Copy%
字段显示 100.00 之后才继续操作。
在这个示例中,镜像
/dev/sda1
的主要分支失败。任何对镜像卷的写入操作都会导致 LVM 去检测失败的镜像。这个时候,LVM 会将镜像转换成单一线性卷。在这里,引起转发的因素是我们执行了 dd
命令。
dd if=/dev/zero of=/dev/vg/groupfs count=10
[root@link-08 ~]# dd if=/dev/zero of=/dev/vg/groupfs count=10
10+0 records in
10+0 records out
您可以使用
lvs
命令确定该设备现在已经是线性设备了。因为是失败的磁盘,所以会发生 I/O 错误。
在这里,您应该仍然可以使用逻辑卷,但没有镜像冗余。
To rebuild the mirrored volume, you replace the broken drive and recreate the physical volume. If you use the same disk rather than replacing it with a new one, you will see "inconsistent" warnings when you run the
pvcreate
command.
下面您可以使用新的物理卷来扩展原来的卷组。
将线性卷转换回它原来的镜像状态。
lvconvert -m 1 /dev/vg/groupfs /dev/sda1 /dev/sdb1 /dev/sdc1
[root@link-08 ~]# lvconvert -m 1 /dev/vg/groupfs /dev/sda1 /dev/sdb1 /dev/sdc1
Logical volume mirror converted.
您可以使用
lvs
命令确定恢复到镜像状态。