溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

讀了這篇文章 AIX誤刪除數(shù)據(jù)的恢復(fù)將變得非常簡單

發(fā)布時間:2020-07-14 17:33:17 來源:網(wǎng)絡(luò) 閱讀:3286 作者:宋國建 欄目:系統(tǒng)運(yùn)維

   在AIX環(huán)境下,若因維護(hù)誤操作、存儲mapping錯誤等,不小心將LV誤刪除,這種損失通常是巨大的。刪除后的不當(dāng)保護(hù)及恢復(fù)操作可能使數(shù)據(jù)無法恢復(fù),也可能增加處理的時間與算法復(fù)雜度。如何有效保護(hù)現(xiàn)場,并選擇正確的數(shù)據(jù)恢復(fù)方案是非常重要的。

    AIX的存儲層有太多文章描述,做為鋪墊,簡要描述一下。PV相當(dāng)于物理磁盤(對于存儲,是存儲映射過來的卷,對于操作系統(tǒng)而言,等同于物理硬盤),若干個PV組成一個VG,意味著可以將容量不同的存儲空間合起來統(tǒng)一分配。為了實(shí)現(xiàn)這個目的,AIX把同一個VG的所有PV按相同大小的存儲顆粒進(jìn)行空間編排,這個存儲顆粒就是PP。而分配空間時,以若干個PP(可能是不同PV上的),做為使用集合,這個集合就是LV。

    AIX的LVM層VGDA區(qū)域有一個固定的PP到LV的映射表,稱為PPMAP。每個PV的所有PP從第一個(PP#1)開始,以固定大小的32個字節(jié)記錄本PP歸屬于哪個LV。刪除AIX中VG的某個LV,底層上最根本的就是釋放這個LV原先占用的PP,也就是清0之前所有占用PP的32字節(jié)PPMAP條目,另外還會做一些諸如LV名稱的清理、LV設(shè)備摘要信息的清理等工作。

    LV被刪除后,不建議貿(mào)然嘗試用mklv等操作試圖進(jìn)行災(zāi)難恢復(fù)。雖然mklv本質(zhì)上不會清除pp內(nèi)容區(qū),但有些情況會損壞數(shù)據(jù),比如:如果故障前后的PP分配表不相同,但前面PP表分配正確,這樣,文件系統(tǒng)可能可以識別,甚至于可以掛上。不過,麻煩的是,掛上后某些結(jié)構(gòu)可能會出現(xiàn)錯誤,以至于被系統(tǒng)自動修正,事情就會變得更糟。即便是只讀方式mount,也不是最優(yōu)選的做法。

    如果時間允許,AIX LV刪除后的恢復(fù)方案大致為:

1、保持VG狀態(tài),不新建任何LV。

2、使用備份手段,對VG中所有的PV做完整鏡像。

3、在鏡像中進(jìn)行數(shù)據(jù)提取恢復(fù)。或保護(hù)鏡像后以分析好的PPMAP,重建丟失的LV。

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

【如何完整鏡像故障卷】

    來說說如何對AIX中的PV做完整鏡像(從目前的數(shù)據(jù)恢復(fù)技術(shù)看,多數(shù)處理和分析過程首選是WINDOWS環(huán)境,所以,鏡像方案盡量兼顧鏡像出來的數(shù)據(jù)可以在WINDOWS下直接訪問):

    第一種方法:如果存儲自身有卷鏡像功能,可以嘗試之。

    第二種方法:如果AIX環(huán)境中有足夠空間,放得下需要鏡像的pv,可以將pv鏡像成文件(或LV)。如果是文件,可以通過FTP等手段傳出來。(不建議此方法)

    第三種方法:另外構(gòu)建一臺NFS server,以nfs的方式用dd將pv鏡像到nfs上。當(dāng)然如果aix上可以掛載cifs,甚至于直接可以鏡像到windows的共享文件夾下。但windows下如果生成大文件,有可能會越來越慢,可以盡量使用WINDOWS2008或選擇其他方案。

    第四種方法:建議的方案。具體為構(gòu)建塊設(shè)備mapping至aix環(huán)境,直接以塊設(shè)備至塊設(shè)備的方法進(jìn)行鏡像??蛇x擇的塊設(shè)備有fc lun,iscsi等。如果不具備fc環(huán)境的支撐,至少iscsi(可以是軟iscsi)是足夠好的方案。

    以windows端做iscsi target,AIX環(huán)境做iscsi initiator為例,下面為詳細(xì)過程:

1、在配置網(wǎng)絡(luò)環(huán)境,保證AIX與WINDOWS網(wǎng)絡(luò)可通。

2、在WINDOWS上搭建ISCSI TARGET,以 下圖starwind為例,創(chuàng)建了一個名稱為pv0的iscsi磁盤。

圖一:

讀了這篇文章 AIX誤刪除數(shù)據(jù)的恢復(fù)將變得非常簡單 

3、返回aix平臺,確定是否安裝iscsi initiator:

lsdev |grep iscsi,如果提示“iscsi0   Available   iSCSI Protocol Device” 表示ISCSI客戶端已經(jīng)安裝,設(shè)備號是iscsi0。也可以用lslpp -L|grep -i iscsi 確認(rèn)是否已經(jīng)安裝了ISCSI軟件包。如未安裝,先安裝iscsi initiator。

4、修改aix環(huán)境中/etc/iscsi/targets文件,在最后增加一行(本例中windows iscsi target的ip是192.168.1.9,iqn見上圖)。192.168.1.9 3260 iqn.2008-08.com.starwindsoftware:tel-pv0

5、在aix平臺執(zhí)行cfgmgr -l iscsi0 (見步驟3中的設(shè)備號),重新掃描iscsi設(shè)備。

6、lspv 查看是否識別到iscsi設(shè)備。本例結(jié)果如下:

圖二:

讀了這篇文章 AIX誤刪除數(shù)據(jù)的恢復(fù)將變得非常簡單 

    可以看到hdisk3已經(jīng)認(rèn)到,可以使用lsattr -El hdisk3  查看設(shè)備詳細(xì)情況,命令結(jié)果為:

圖三:

讀了這篇文章 AIX誤刪除數(shù)據(jù)的恢復(fù)將變得非常簡單 

    可以看到明確的iscsi設(shè)備細(xì)節(jié),還可以通過bootinfo -s hdisk3查看目標(biāo)iscsi容量是否正確(單位為MB,本例為演示,僅創(chuàng)建了個大小為4GB的ISCSI存儲卷)。

圖四:

讀了這篇文章 AIX誤刪除數(shù)據(jù)的恢復(fù)將變得非常簡單 

7、使用dd命令對故障存儲做完整鏡像(建議使用塊設(shè)備路徑進(jìn)行鏡像):ddif=/dev/rhdisk0 of=/dev/rhdisk3  bs=4096k  conv=noerror,sync。

【AIX LV誤刪除數(shù)據(jù)恢復(fù)方案】 

    在完整備份故障PV后,就可以著手恢復(fù)數(shù)據(jù)了。大致有3種方案可對數(shù)據(jù)進(jìn)行恢復(fù)

方案一:

    分析得到原LV的PPMAP,之后通過mklv -m <指定的ppmap文件>的方式重建與原先LV相同的分配表,以激活原LV,從而恢復(fù)數(shù)據(jù)。

方案二:

    分析得到原LV的PPMAP,直接通過第三方軟件(北亞開發(fā)有WINDOWS端的JFS2文件系統(tǒng)解釋軟件)進(jìn)行JFS2文件系統(tǒng)解釋。如果是裸設(shè)備(RAW),可完整讀出后再重新按塊寫回。

方案三:

    如果原LV中存儲的是ORACLE數(shù)據(jù)庫,可以針對oracle數(shù)據(jù)文件的特征,以碎片的方式,從所有PP中提取并組合好所有的特定數(shù)據(jù)文件,再災(zāi)難方式恢復(fù)oracle系統(tǒng)。


向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI