4

【服务器数据恢复】AIX环境下逻辑卷被删除的数据恢复方案分析

 1 year ago
source link: https://blog.51cto.com/sun510/5749399
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

【服务器数据恢复】AIX环境下逻辑卷被删除的数据恢复方案分析

精选 原创

一、AIX存储层面相关的知识&AIX环境下LV误删除后的恢复方案。

对于AIX而言,PV相当于物理磁盘,一个VG由若干个PV组成,这让我们可以将容量不同的存储空间组合起来进行统一分配。AIX把同一个VG的所有PV按相同大小的存储颗粒(PP)进行空间编排。而分配空间时,以若干个PP(可能是不同PV上的)作为集合,这个集合就是LV(逻辑卷)。

AIX的LVM层VGDA区域有一个固定的PP到LV的映射表,称为PPMAP。每个PV的所有PP从第一个(PP#1)开始,以固定大小的32个字节记录本PP归属于哪个LV。删除AIX中VG的某个LV,在底层就是释放这个LV原先占用的PP,也就是清零之前所有占用PP的32字节PPMAP条目,另外还会做一些诸如LV名称的清理、LV设备摘要信息的清理等工作。

在AIX环境下LV被删除后,不建议贸然使用mklv命令进行恢复。虽然mklv操作在理论上不会清除pp内容区,但在某些情况下还是会损坏数据,比如这种情况:故障前后的PP分配表不相同但前面的PP表分配正确,这样即使文件系统可以识别甚至于可以挂上,但是挂上后某些结构可能会出现错误,然后被系统自动修正,这种情况更糟糕。当然只读方式mount也不是很好的办法。

北亚数据恢复中心给出的AIX环境下LV误删除后的恢复方案:

1、保持VG状态,不新建任何LV。

2、对VG中所有的PV做完整镜像。

3、在镜像中进行数据提取恢复或保护镜像后以分析好的PPMAP去重建丢失的LV。

上述方案的宗旨为:所有操作尽可能可回溯。

二、完整镜像故障卷。

方法一:如果存储自身有卷镜像功能,可以尝试之。

方法二:如果AIX环境中有足够空间,放得下需要镜像的pv,可以将pv镜像成文件(或LV)。如果是文件,可以通过FTP等手段传出来。(不建议此方法)

方法三:另外构建一台NFS server,以nfs的方式用dd将pv镜像到nfs上。当然如果aix上可以挂载cifs,甚至于直接可以镜像到windows的共享文件夹下。但windows下如果生成大文件,有可能会越来越慢,可以尽量使用WINDOWS2008或选择其他方案。

方法四:建议的方案。具体为构建块设备mapping至aix环境,直接以块设备至块设备的方法进行镜像。可选择的块设备有fc lun,iscsi等。如果不具备fc环境的支撑,至少iscsi(可以是软iscsi)是足够好的方案。

以windows端做iscsi target,AIX环境做iscsi initiator为例,下面为故障卷镜像过程:

1、配置网络环境,让AIX与WINDOWS可以通过网络通讯。

2、在WINDOWS上搭建ISCSI TARGET,以starwind为例,创建了一个名称为pv0的iscsi磁盘。

【服务器数据恢复】AIX环境下逻辑卷被删除的数据恢复方案分析_aix数据恢复

3、返回aix平台,确定是否安装iscsi initiator。

输入lsdev | grep iscsi,如果提示“iscsi0   Available   iSCSI Protocol Device” 就表示ISCSI客户端已经安装,设备号是iscsi0。输入lslpp -L | grep -i iscsi确认是否已经安装了ISCSI软件包。如未安装,先安装iscsi initiator。

4、修改aix环境中/etc/iscsi/targets文件,在文件内容最后增加一行(本例中windows iscsi target的ip是192.168.1.9,iqn见上图)。

5、在aix平台执行cfgmgr -l iscsi0 (见步骤3中的设备号),重新扫描iscsi设备。

6、lspv查看是否识别到iscsi设备。结果如下:

【服务器数据恢复】AIX环境下逻辑卷被删除的数据恢复方案分析_aix数据恢复_02

可以看到hdisk3已经识别到,lsattr -El hdisk3查看设备详细情况,结果为:

【服务器数据恢复】AIX环境下逻辑卷被删除的数据恢复方案分析_北亚数据恢复_03

可以看到iscsi设备细节,还可以通过bootinfo -s hdisk3查看目标iscsi容量是否正确(单位为MB,本例仅为演示,只创建了个大小为4GB的ISCSI存储卷)。

【服务器数据恢复】AIX环境下逻辑卷被删除的数据恢复方案分析_北亚数据恢复_04

7、使用dd命令对故障存储做完整镜像(建议使用块设备路径进行镜像):ddif=/dev/rhdisk0 of=/dev/rhdisk3  bs=4096k  conv=noerror,sync。

三、AIX环境下LV误删除数据恢复方案。

在完整备份故障PV后就可以开始恢复数据了。有3种方案可以对数据进行恢复:

方案一:分析得到原LV的PPMAP,之后通过mklv -m <指定的ppmap文件>的方式重建与原先LV相同的分配表,以激活原LV,从而恢复数据。

方案二:分析得到原LV的PPMAP,直接通过第三方软件(北亚开发有WINDOWS端的JFS2文件系统解释软件)进行JFS2文件系统解释。如果是裸设备(RAW),可完整读出后再重新按块写回。

方案三:如果原LV中存储的是ORACLE数据库,可以针对oracle数据文件的特征,从所有PP中提取碎片并组合好所有的特定数据文件,再以Oracle数据库的灾难恢复方法恢复oracle数据库系统。

  • 打赏
  • 收藏
  • 评论
  • 分享
  • 举报

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK