有关恢复LVCB的操作
时间:2011-03-06
来源:互联网
假如某个LV的LVCB被破坏:
dd if=/dev/zero of=/dev/sjhlv bs=512 count=1 --破坏lvcb的内容。
#umount /lvcbtest
#mount /lvcbtest
可以看到虽然lvcb被清空,但LV及其上的FS都没有问题,依然可以正常使用。说明MOUNT不需要LVCB。
要恢复LVCB首先需要--把逻辑卷标志写到从逻辑卷开始的9个字节中。
#echo "AIX LVCB\0" | dd of=/dev/sjhlv bs=1 count=9
9+0 records in
9+0 records out
然后执行synclvodm写入LVCB。假如不做上一步synclvodm会报错:0516-622 synclvodm: Warning, cannot write lv control block data.
#synclvodm -vP sjhvg sjhlv
synclvodm: Physical volume data updated.
synclvodm: Logical volume sjhlv updated.
--用VGDA的数据同步ODM,ODM多的VGDA不管,不更新。然后会把ODM库中关于这个LV的参数写入LV卷头4KB中。最后我们看到一些信息还是没有恢复,比如:label = ,machine id = ,fs =等。LVCB的信息存在三份,分别在lv的头部,VGDA,ODM。猜测VGDA,ODM只含有LVCB的部分信息。VGDA也没有LVCB关于type的条目信息。
#chfs -a log=/dev/loglv02 /lvcbtest命令会写入LVCB的“fs = vfs=jfs2:log=/dev/loglv02 : options=rw:account=false ”的信息
--用chfs命令按照ODM数据库中的其它内容,进行恢复。到现在位置还有label,time created条目没有恢复。
#putlvcb -L /lvcbtest sjhlv命令会写入LVCB的“label = /lvcbtest ”的信息。
--The putlvcb command writes the control block information into block 0 of the logical volume lvname. Only the fields specified are written. putlvcb can be used to write a new control block or update an existing one.
然后:
#varyoffvg sjhvg
#exportvg sjhvg
在其他机器上importvg试试看,这个LV有没有问题。
#importvg -y sjhvg hdisk7
sjhvg
经测试一切OK。LVCB完全恢复!
作者: mi_zy 发布时间: 2011-03-06
学习了,虽然还是不怎么明白。多谢LZ分享
作者: Gray_Sky 发布时间: 2011-03-07
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28