一、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數據恢復
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數據恢復
可以看到hdisk3已經識別到,lsattr -El hdisk3查看設備詳細情況,結果為:
北亞數據恢復——AIX數據恢復
可以看到iscsi設備細節,還可以通過bootinfo -s hdisk3查看目標iscsi容量是否正確(單位為MB,本例僅為演示,只創建了個大小為4GB的ISCSI存儲卷)。
北亞數據恢復——AIX數據恢復
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數據庫系統。
審核編輯:湯梓紅
-
服務器
+關注
關注
12文章
9024瀏覽量
85187 -
數據恢復
+關注
關注
10文章
550瀏覽量
17392 -
AIX
+關注
關注
0文章
10瀏覽量
9845
發布評論請先 登錄
相關推薦
評論