码迷,mamicode.com
首页 > 其他好文 > 详细

aix HDISK中丢失VGDA的恢复办法

时间:2018-03-13 11:06:05      阅读:213      评论:0      收藏:0      [点我收藏+]

标签:aix丢失VGDA的恢复办法

1台主机hdisk2的VGDA信息丢失,恢复的步骤:

 datavg包含hdisk1 hdisk4 hdisk2, 

hdisk2的VGDA信息丢失,(判断方法:lqueryvg -Atp hdisk2,无法得到结果) 

导致hdisk2中的LV全部不能MOUNT。 

#lsvg -p datavg 

hdisk1 active datavg 

hdisk2 missing datavg 

hdisk4 active datavg 

exportvg 以后,rmdev -dl hdisk2,此时hdisk2的PVID也没有了 lspv 

hdisk2 none None 

要恢复hdisk2中的LV信息,首先要把hdisk2想办法加入到datavg中。 # chdev -l hdisk2 -a pv=yes 

此时,hdisk2又恢复了以前的PVID了。 # synclvodm datavg 

将把hdisk2加入到datavg中,(因为系统的ODM库中,知道PVID=hdisk2是DATAVG的PV) # lspv 

hdisk2 0002039490ef datavg 

# exportvg datavg (从ODM库中删除VGDA的信息) 

# importvg -y datavg hdisk4 (不要HDISK2,因为此时HDISK2的VGDA是坏的) importvg 的时候,系统会再次做synclvodm,这次将会把系统ODM中VGDA的信息同步到hdisk2上。 # lsvg -p datavg hdisk1 active datavg hdisk2 active datavg hdisk4 active datavg 

此时,HDISK2上的VGDA信息又恢复了。里面的LV可以读写了。不过对于HDISK2上的文件系统,需要做 个fsck     

手工修改PVID 

如果某人对硬盘做过"chdev -l hdiskX -a pv=clear"的话,那么即使再使用"chdev -l hdisk* -a pv=yes"也无法获得原来的PVID了,这样就会导致原来的VG没法使用了。一般我们会使用recreatvg来修复,但是这样的话不仅lv name,fs name都改了,甚至mount point都需要改掉,数据虽然保住了,但是非常的麻烦。 

下面提供一个手工修改PVID的办法,以达到恢复数据的目的: 1. 首先取得硬盘VGDA区中的PVID。例如:    

#lqueryvg -p hdisk* -P  

000d097d5f36f79f 2 0 

2. 将pvid转换成8进制,注意两个字符为一组。例如:    

\00\015\011\0175\0137\066\0367\0237 3. 用dd将此PVID写入硬盘:    

#echo "\00\015\011\0175\0137\066\0367\0237\c" | dd of=/dev/hdiskX bs=1 seek=128 count=8 

4. 检查是否成功写入:    

#dd if=/dev/hdiskX bs=1 skip=128 count=8 | od -x 5. 删除该盘,再重新认一遍:    

#rmdev -dl hdiskX;cfgmgr –v 6. 最后再importvg 


aix HDISK中丢失VGDA的恢复办法

标签:aix丢失VGDA的恢复办法

原文地址:http://blog.51cto.com/sf1314/2085901

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!