国产aV无码片毛片一级韩国,午夜草草视频在线播放,中国人妻少妇精品一区二区,在线视频播放一区二区三区,一区二区三区久久av,日韩人妻系列中文字幕,国产av综合av亚洲av,欧美多人啊啊啊啊污污视频,国产大鸡巴插女生b视频

教育裝備采購(gòu)網(wǎng)
第八屆圖書(shū)館論壇 校體購(gòu)2

基于XFS文件系統(tǒng)的文件碎片重組恢復(fù)方法

教育裝備采購(gòu)網(wǎng) 2017-03-27 09:01 圍觀943次

  編者按:隨著數(shù)據(jù)恢復(fù)技術(shù)的不斷發(fā)展,基于磁盤(pán)數(shù)據(jù)邏輯層恢復(fù)技術(shù)日益完善,但目前在邏輯層恢復(fù)技術(shù)中存在一項(xiàng)巨大的挑戰(zhàn),那就是當(dāng)刪除文件存在多段碎片的狀態(tài)時(shí),數(shù)據(jù)重組恢復(fù)將變得十分困難。本期,數(shù)據(jù)恢復(fù)四川省重點(diǎn)實(shí)驗(yàn)室科研人員將以一種XFS文件三系統(tǒng)中文件在存儲(chǔ)時(shí)被散列多個(gè)片段的情況下,被刪除后的恢復(fù)為例,講解基于XFS文件系統(tǒng)的碎片重組恢復(fù)方法。

  一、XFS文件系統(tǒng)簡(jiǎn)介

  XFS 最初是由 Silicon Graphics,Inc.于 90 年代初開(kāi)發(fā)的一種高性能日志文件系統(tǒng)。XFS極具伸縮性,非常健壯,之后SGI將其移植到了Linux系統(tǒng)中。它是一個(gè)64位的文件系統(tǒng)。

  XFS文件系統(tǒng)具有良好數(shù)據(jù)完全性,能夠在斷電以及操作系統(tǒng)崩潰的情況下保證文件系統(tǒng)數(shù)據(jù)的一致性,如果文件系統(tǒng)開(kāi)啟日志功能,磁盤(pán)上的文件不再會(huì)因意外情況而遭到破壞,文件系統(tǒng)可以根據(jù)所記錄的日志在一定時(shí)間內(nèi)恢復(fù)磁盤(pán)文件內(nèi)容,這與文件系統(tǒng)上存儲(chǔ)的文件多少與數(shù)據(jù)量大小無(wú)關(guān)。另外,XFS 是一個(gè)全64-bit的文件系統(tǒng),它可以支持上百萬(wàn)T字節(jié)的存儲(chǔ)空間。對(duì)特大文件及小尺寸文件的支持都表現(xiàn)出眾,支持特大數(shù)量的目錄。最大可支持的文件大小為263 = 9 exabytes。

  二、XFS文件存儲(chǔ)原理

  通過(guò)解析XFS文件系統(tǒng)存儲(chǔ)原理發(fā)現(xiàn),分配組是XFS抽象程度最高的概念,XFS文件系統(tǒng)內(nèi)部被分為多個(gè)“分配組”(AG),它們是文件系統(tǒng)中的等長(zhǎng)線性存儲(chǔ)區(qū)。每個(gè)分配組各自管理自己的inode和剩余空間。文件和文件夾可以跨越分配組。這一機(jī)制為XFS提供了可伸縮性和并行特性——多個(gè)線程和進(jìn)程可以同時(shí)在同一個(gè)文件系統(tǒng)上并行執(zhí)行I/O操作。這種由分配組帶來(lái)的內(nèi)部分區(qū)機(jī)制在一個(gè)文件系統(tǒng)跨越多個(gè)物理設(shè)備時(shí)特別有用,使得優(yōu)化對(duì)下級(jí)存儲(chǔ)部件的吞吐量利用率成為可能。

  在一個(gè)磁盤(pán)上創(chuàng)建XFS文件系統(tǒng)之后,磁盤(pán)會(huì)被格式化成如下格式,如圖1。

  

  圖1

  在CentOS7上默認(rèn)的是創(chuàng)建4個(gè)AG。每個(gè)AG都相當(dāng)于是1個(gè)獨(dú)立的文件系統(tǒng),維護(hù)著自己的free space以及inode,其主要包括以下信息:

  •superblock:描述整個(gè)文件系統(tǒng)的信息。

  •空閑空間管理。

  •inode的分配和記錄管理

  在超級(jí)塊superblock中記錄著AG中的所有元數(shù)據(jù)信息,其中幾個(gè)核心的元數(shù)據(jù)為:

  •blocksize,文件系統(tǒng)中使用的block的大小,以及整個(gè)文件系統(tǒng)用于存放data和metadata的block個(gè)數(shù)。

  •sectorsize,指定底層磁盤(pán)一個(gè)扇區(qū)的大小,數(shù)據(jù)的最小對(duì)齊粒度。

  • AG_blocks/AG_count,文件系統(tǒng)中一個(gè)AG包含的block個(gè)數(shù),以及整個(gè)文件系統(tǒng)AG的個(gè)數(shù)。

  • inodesize/inopblock,記錄inode的大小以及每個(gè)block中包含inode的個(gè)數(shù)。

  •logstart/logblocks,如果使用同一塊盤(pán)存放XFS的journal,這兩個(gè)值用于表示存放journal的第一個(gè)block以及用于存放log的總block個(gè)數(shù)。

  •icount/ifree,文件系統(tǒng)中已經(jīng)分配的inode個(gè)數(shù)以及剩余可用的inode個(gè)數(shù),這個(gè)只在AG Primary的Superblock中維護(hù)。

  需要說(shuō)明的是XFS文件系統(tǒng)中采用的字節(jié)序?yàn)榇蠖耍赟uperblock中記錄著AG中的所有元數(shù)據(jù)信息結(jié)構(gòu),如圖2所示。

  

  圖2

  在XFS存儲(chǔ)數(shù)據(jù)文件時(shí),會(huì)產(chǎn)生一個(gè)extend鏈表來(lái)存儲(chǔ)文件占用的塊結(jié)構(gòu)的編號(hào),并且按照順序來(lái)進(jìn)行記錄,在每一記錄項(xiàng)中包含了塊地址的編號(hào)與使用塊的個(gè)數(shù)。為了更為方便闡述,我們將使用IRIX 5.3版本發(fā)布的XFS文件系統(tǒng)為例,文件鏈表的基本結(jié)構(gòu)如圖3所示。

  

  圖3

  XFS文件系統(tǒng)中每一個(gè)文件鏈表的長(zhǎng)度為一個(gè)塊的長(zhǎng)度,其結(jié)構(gòu)如圖4所示。

  

  圖4

  文件特征頭為0x424D4150,長(zhǎng)度為4字節(jié),其后2字節(jié)表示當(dāng)前文件鏈表的級(jí)別,緊接著2字節(jié)記錄的值表示當(dāng)前文件鏈表中的記錄項(xiàng)的個(gè)數(shù),后面左右兄弟節(jié)點(diǎn)的地址均占有8字節(jié)來(lái)存儲(chǔ),在其后的數(shù)據(jù)為若干個(gè)記錄項(xiàng)數(shù)據(jù),每一記錄項(xiàng)的長(zhǎng)度為16字節(jié),若某一記錄項(xiàng)未被使用時(shí),其16字節(jié)長(zhǎng)度的內(nèi)容全用00表示。

  在每一個(gè)記錄項(xiàng)中記錄著存儲(chǔ)文件的塊地址信息,具體的每一個(gè)記錄項(xiàng)的結(jié)構(gòu),如圖5所示。

  

  圖5

  在記錄項(xiàng)中存儲(chǔ)結(jié)構(gòu)的劃分單位為bit(位),由于每一個(gè)記錄項(xiàng)的長(zhǎng)度為16字節(jié),也即是16*8=128bit,在相對(duì)每一記錄項(xiàng)起始偏移1bit的值為記錄項(xiàng)的標(biāo)記位;在相對(duì)每一記錄項(xiàng)起始偏移2bit~55bit的值為記錄項(xiàng)所記錄的塊數(shù)據(jù)在文件中的相對(duì)偏移的塊數(shù);在相對(duì)每一記錄項(xiàng)起始偏移56bit~107bit的值為文件所使用的塊地址,在該處記錄地址的信息包含的文件所使用塊所在的AG編號(hào)及塊在AG中的相對(duì)偏移編號(hào),其中塊在AG中的相對(duì)偏移編號(hào)在該結(jié)構(gòu)中占有的位數(shù)處于低位,長(zhǎng)度的值為在XFS文件系統(tǒng)中相對(duì)超級(jí)塊起始偏移0x7C字節(jié)的處記錄的值,由此可計(jì)算出塊所在的AG編號(hào)的值位于相對(duì)記錄項(xiàng)起始偏移56bit~107bit的高位處,其長(zhǎng)度為52減塊在AG中的相對(duì)偏移編號(hào)的長(zhǎng)度值;在相對(duì)每一記錄項(xiàng)起始偏移108bit~128bit的值為文件所使用的塊個(gè)數(shù)。

  三、XFS文件系統(tǒng)的碎片重組恢復(fù)思路

  通過(guò)對(duì)XFS文件系統(tǒng)的深入分析,發(fā)現(xiàn)當(dāng)文件在存儲(chǔ)時(shí)分配的塊不連續(xù),會(huì)使用extend文件鏈來(lái)記錄文件存儲(chǔ)信息。通過(guò)對(duì)比文件刪除前后的變化情況發(fā)現(xiàn),文件刪除后會(huì)清除記錄文件inode節(jié)點(diǎn)信息,而文件鏈表信息不會(huì)丟失,如圖6,這就為數(shù)據(jù)恢復(fù)提供了理論支持。

  

  圖6

  由于XFS在存儲(chǔ)數(shù)據(jù)文件時(shí),會(huì)產(chǎn)生一個(gè)鏈表來(lái)存儲(chǔ)文件占用的塊結(jié)構(gòu)的編號(hào),并且按照順序來(lái)進(jìn)行記錄,在每一記錄項(xiàng)中包含了塊地址的編號(hào)與使用的塊的個(gè)數(shù)。根據(jù)以上特征,只需通過(guò)快速定位存儲(chǔ)文件占用塊編號(hào)的鏈表來(lái)進(jìn)行查找數(shù)據(jù),并按照鏈表中記錄的信息讀取相應(yīng)塊地址的數(shù)據(jù)內(nèi)容,然后按照鏈表的記錄的順序?qū)⑻崛〉降臄?shù)據(jù)進(jìn)行拼接重組,即可實(shí)現(xiàn)XFS文件系統(tǒng)的碎片重組。這種方法不僅能夠快速高效提取刪除的視頻數(shù)據(jù),還能將刪除的視頻數(shù)據(jù)進(jìn)行拼接重組。

  四、XFS文件系統(tǒng)的碎片重組恢復(fù)流程

  基于XFS文件系統(tǒng)的碎片重組恢復(fù)方法,主要通過(guò)以下流程來(lái)完成:

  1.加載并解析磁盤(pán)扇區(qū)信息

  加載磁盤(pán),讀取磁盤(pán)中AG內(nèi)的超級(jí)塊所在扇區(qū)信息并解析。需要解析的內(nèi)容包括塊大小,塊總數(shù),AG所包含的塊數(shù),每一個(gè)塊在AG中的相對(duì)偏移值。具體地,superblock位于AG數(shù)據(jù)中的第一個(gè)扇區(qū),在相對(duì)于超級(jí)起始地址偏移0x04~0x07記錄的值表示塊大小,在相對(duì)于超級(jí)起始地址偏移0x08~0x0F記錄的值表示塊總數(shù),在相對(duì)于超級(jí)起始地址偏移0x54~0x57記錄的值表示單個(gè)AG所包含的塊的總個(gè)數(shù),在相對(duì)于超級(jí)起始地址偏移0x7C記錄的值表示在文件鏈表記錄項(xiàng)中塊在AG的相對(duì)偏移編號(hào)。

  2.匹配文件鏈表結(jié)構(gòu)

  獲取單個(gè)文件鏈表的大小,即塊大小的值。將整個(gè)硬盤(pán)的數(shù)據(jù)按照塊大小分成若干個(gè)塊,匹配每一個(gè)塊是否符合文件鏈表的結(jié)構(gòu),文件鏈表的結(jié)構(gòu)特征包含如下特征:

  特征一:文件鏈表特征頭為0x424D4150;

  特征二:文件鏈表特征頭后兩個(gè)字節(jié)表示文件鏈表的級(jí)別,該處記錄值的范圍是0~255;

  特征三:文件鏈表級(jí)別后兩個(gè)字節(jié)表示文件鏈表的記錄項(xiàng)的個(gè)數(shù),該處記錄的值應(yīng)小于超級(jí)塊中記錄的總塊數(shù);

  特征四:在特征三之后的8個(gè)字節(jié)表示該文件鏈表所記錄的文件之前有數(shù)據(jù)內(nèi)容的狀態(tài),該處記錄的值應(yīng)小于超級(jí)塊中記錄的總塊數(shù);

  特征五:在特征四之后的8個(gè)字節(jié)表示該文件鏈表所記錄的文件之后有數(shù)據(jù)內(nèi)容的狀態(tài),該處記錄的值應(yīng)小于超級(jí)塊中記錄的總塊數(shù);

  3.解析文件鏈接結(jié)構(gòu)

  首先通過(guò)2中特征四來(lái)判斷該文件鏈表所記錄的文件在此文件鏈表記錄的地址之前是否包含數(shù)據(jù)。若2中特征四描述的地址的值為-1,則表示在此之前無(wú)文件數(shù)據(jù),也表明該文件鏈為文件存儲(chǔ)的root節(jié)點(diǎn);若2中特征四描述的地址的值不為-1時(shí),該值表示該文件鏈表所記錄的文件在此文件鏈表記錄的地址之前的文件鏈表所在的塊號(hào),跳轉(zhuǎn)至相應(yīng)塊號(hào)讀取塊中的文件鏈表結(jié)構(gòu),按照3所描述的方法進(jìn)行解析文件鏈表結(jié)構(gòu);同理判斷2中特征五所描述的該文件鏈表所記錄的文件在此文件鏈表記錄的地址之后是否包含數(shù)據(jù);依次文件鏈表中每一記錄項(xiàng)數(shù)據(jù),按照記錄項(xiàng)的結(jié)構(gòu)特征讀取記錄文件數(shù)據(jù)的塊號(hào)和所占用的塊個(gè)數(shù)。

  4.讀取對(duì)應(yīng)塊地址數(shù)據(jù)

  根據(jù)3中解析的內(nèi)容,依據(jù)文件鏈表中記錄的順序,依次讀取每一記錄項(xiàng)對(duì)應(yīng)塊地址的數(shù)據(jù)內(nèi)容;

  5.重組新文件

  將4中讀取的數(shù)據(jù),按照文件鏈表中記錄的文件鏈表間的關(guān)系和記錄項(xiàng)的順序,依次拼接項(xiàng)中記錄的塊地址的數(shù)據(jù),重新組合為一個(gè)新的文件;

  6.遍歷硬盤(pán)扇區(qū)

  將一個(gè)文件鏈表中記錄的值解析完成后,繼續(xù)向下搜索文件鏈表結(jié)構(gòu)并判斷該文件鏈表是否被使用,若被使用繼續(xù)向下,未使用則進(jìn)行解析,重復(fù)2到5的步驟,直至遍歷整個(gè)硬盤(pán)扇區(qū)。

  通過(guò)以上步驟,即可實(shí)現(xiàn)XFS文件系統(tǒng)的碎片重組恢復(fù)。

  四、結(jié)語(yǔ)

  本期,數(shù)據(jù)恢復(fù)四川省重點(diǎn)室科研人員介紹了一種基于XFS文件系統(tǒng)的視頻刪除數(shù)據(jù)的快速提取與恢復(fù)方法,這種方法不僅能夠快速高效提取刪除視頻數(shù)據(jù),還能將刪除視頻數(shù)據(jù)進(jìn)行拼接重組。目前,此方法已經(jīng)在效率源DRS數(shù)據(jù)恢復(fù)系統(tǒng)、VIP視頻偵查單兵系統(tǒng)、VIE視頻全能提取系統(tǒng)等產(chǎn)品中應(yīng)用,取得了很好的效果。

點(diǎn)擊進(jìn)入四川巧奪天工信息安全智能設(shè)備有限公司展臺(tái)查看更多 來(lái)源:教育裝備采購(gòu)網(wǎng) 作者:四川巧奪天工精密設(shè)備有限公司 責(zé)任編輯:黃磊 我要投稿
校體購(gòu)終極頁(yè)

版權(quán)與免責(zé)聲明:

① 凡本網(wǎng)注明"來(lái)源:教育裝備采購(gòu)網(wǎng)"的所有作品,版權(quán)均屬于教育裝備采購(gòu)網(wǎng),未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、摘編或利用其它方式使用。已獲本網(wǎng)授權(quán)的作品,應(yīng)在授權(quán)范圍內(nèi)使用,并注明"來(lái)源:教育裝備采購(gòu)網(wǎng)"。違者本網(wǎng)將追究相關(guān)法律責(zé)任。

② 本網(wǎng)凡注明"來(lái)源:XXX(非本網(wǎng))"的作品,均轉(zhuǎn)載自其它媒體,轉(zhuǎn)載目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé),且不承擔(dān)此類(lèi)作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。如其他媒體、網(wǎng)站或個(gè)人從本網(wǎng)下載使用,必須保留本網(wǎng)注明的"稿件來(lái)源",并自負(fù)版權(quán)等法律責(zé)任。

③ 如涉及作品內(nèi)容、版權(quán)等問(wèn)題,請(qǐng)?jiān)谧髌钒l(fā)表之日起兩周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

校體購(gòu)產(chǎn)品