朋友通过MSN向我求救,说在给rootvg做镜像的时候系统报错。具体如下:
#extendvg rootvg hdisk1 --报错说rootvg需要varyon。
此时的rootvg显然是varyon的,否则系统怎么可能正常运行呢?也重启过系统依然不能解决问题。以下是我要他敲的几个命令及反馈结果:
#lspv
hdisk0 0035667cd6792c0e none
hdisk1 none none
#lsvg -o
lsvg: Unable to find device id 0035667d00004c00000000dc78c5cbc8 in the Device Configuration Database.
#lsvg rootvg
0516-010 : Volume group must be varied on; use varyonvg command.
#synclvodm -P -v rootvg
0516-010 : Volume group must be varied on; use varyonvg command.
--看来同步也不行。
#varyonvg rootvg
0516-008 varyonvg: LVM system call returned an unknown error code
这里偏偏是rootvg,如果是其他vg可以考虑export/import。现在的问题是ODM乱了,ODM里没有rootvg的正确信息,想通过VGDA去同步ODM用前面的方法也试过了。还有什么方法把VGDA关于rootvg的信息更新到ODM库呢?突然想到一个命令:redefinevg(用VGDA的信息去重新定义卷组)。
注意到前面lsvg -o的输出里有一串数字,0066657d00004c00000000dc65c5cbc6,这串数字应该是个vgid,而系统此时还没有建立其它的VG,那肯定就是 rootvg的vgid。系统启动的时候需要读取的是vgid而不是rootvg这个名字,所以系统正常启动没有问题。这里要解决的就是vgid跟真实的rootvg不对应的问题。
#redefinevg -d hdisk0 -i 0066657d00004c00000000dc65c5cbc6 rootvg
#varyonvg -b rootvg -- -b强制激活已经varyon的vg,重启系统也可以达到此目的。
然后就是做镜像的常规步骤了:
#extendvg rootvg hdisk1
#chvg -Qn rootvg
#mirrorvg -s rootvg
#syncvg -v rootvg
#bosboot -a
#bootlist -m normal hdisk0 hdisk1
#shutdown -Fr
#bootinfo -b
阅读(2601) | 评论(0) | 转发(1) |