首先,当前输出看datavg不是全mirror的状态,按照楼主的要求,假设要更换hdisk1,首先得分析现状:
从lsvg -l 看到fslv01的lp:pp:pv=1:2:3,表明2分副本分布在3个PV上。
从lspv -l 看到hdisk1上只有fslv01的一部分PP,总32个PP,hdisk1上只有18+5=23个。
那么要更换hdisk1,具体要做什么呢?两种方法:
1.插入新硬盘,加入datavg,使用migratepv命令将hdisk1上的数据迁移到新的hdisk4中。不需要考虑lp,pp的分布,原来hdisk1上是什么,hdisk4上就是什么。
2.按照楼主想法,使用unmirrorvg命令能达到目的。但是他会默认删除第二个lv副本。在hdisk1上的fslv01副本可能是第一份也可能是第二份(使用lslv -m fslv01可以核实)。unmirrorvg之后遗留副本可能还是hdisk1上的副本,果真如此还得做lv迁移来做弥补。正确的做法是,使用rmlvcopy fslv01 1 hdisk1命令删除hdisk1上分布的那份副本。接下来再reducevg,更换硬盘,extendvg,需要注意的是,手工mklvcopy的时候,正确的命令是mklvcopy fslv01 2 hdisk1(新磁盘),2代表2份副本。完了再syncvg -l fslv01,这样就没问题了。