同步vgda与lv头的lvcb信息

在aix中,lv的lvcb信息位于每个lv头部的512字节,同时在vgda中也有所有lv的lvcb的一份copy,如果发生lv头的lvcb与vgda中的lvcb不一致的情况,如何同步呢?不过这种情况是少之又少的,只是提供一种分析问题的思路
   如果发生不一致,一般的命令是不能同步的,synclvodm肯定不能,该命令只能同步vgda->odm,它是不会修改vgda的信息的,翻了翻红皮书,找到了一个putlvcb命令,以下通过实际例子说明下:
   1、新建一个jfs2的lv,lvtest,lvid为vgid.3,在lv上创建一个文件系统,mount point为/test,mount后任意创建几个文件,
   2、dd if=/dev/lvtest of=/dev/rmt0 bs=4096 将lvtest的数据备份到磁带,稍后进行恢复
   3、在同一卷组上再新建一个jfs2的lv,lvtest1,该lv的lvid为vgid.4,大小与lvtest一致吧
   4、rmfs /test,同时lvtest也被删除
   5、将test fs从磁带恢复到lvtest1上,dd if=/dev/rmt0 of=/dev/lvtest1 bs=4096
   6、修改 /etc/filesystems 添加/test文件系统的相关,注意dev变了
   7、mount /test 可能报错,提示执行fsck -p
   8、fsck -p后,正常mount,数据没有丢失
   9、lslv lvtest1 发现lvid为vgid.4
   10、dd if=/dev/lvtest1 count=1 bs=1024 发现lv头的lvid记录为vgid.3,原因是从磁带倒过来的lvtest的lvcb信息,也就是lvtest1的lvcb信息被修改了
   11、synclvodm未果
   12、exportvg  importvg,未果,奇怪的是lvtest1的lvcb被改了,但是importvg的时候竟然没有报错,且/etc/filesystems 文件中没有/test文件系统的entries,这个好理解,因为自从第4步之后就没有crfs的操作,所以没有了,如何恢复呢?
   13、使用putlvcb命令,首先使用readvgda -v /dev/hdisk#查看卷组vgda区域记录的lvcb的信息,找到lvtest1的lvcb信息,发现lvtest1在vgda中只记录了lvid,lv type,两个参数,需要添加其他参数,并且修改lvid
   14、使用putlvcb命令更新lv头的lvcb,同时它将自动更新vgda中的vgda信息,
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.
   15、修改lvid  ,putlvcb -i vgid.4 lvtest1
       添加mount point ,putlvcb -L /test  lvtest1
       添加jfs2日志设备 ,putlvcb -f log=/dev/loglv02  lvtest1
       有必要,也可以修改下type ,putlvcb -t jfs2 lvtest1
   16、使用readvgda 命令查看修改结果
   17、如果修改成功的话,exportvg importvg,将发现/etc/filesystem文件中可以有指定的entries了,直接mount /test  成功
   以上分析了几个问题,象lslv importvg 等大多数的lvm命令,读取的实际上是vgda的信息(importvg将vgda信息import到odm中),而只有少数命令从lvcb获取信息,更确切的说,修改lvcb的信息将同时在vgda和lv头进行,而读取lvcb的话,将从vgda读取,另外备份文件系统最好不要用dd,大把备份方式,裸设备不是万不得以也最好不要用dd。
   以上环境是AIX5302,一块SSA盘,单盘卷组

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值