張東旭

摘要:隨著新興工業(yè)化發(fā)展和信息化技術(shù)的不斷推進,信息技術(shù)已成為人們生活中不可缺少的重要組成部分,它給人們帶來方便的同時,也給我們帶來很多不安全因素,如短信被攔截、密碼被盜、信息泄密等,一旦數(shù)據(jù)丟失掉,給人們帶來的損失非常大。筆者就NTFS磁盤出現(xiàn)問題或文件丟失后如何安全的恢復(fù)文件進行了深入地分析,更好的解決在硬盤格式化過程中造成數(shù)據(jù)丟失的問題。
關(guān)鍵詞:NTFS 硬盤格式化恢復(fù)技術(shù) 研究
中圖分類號:TP309.3 文獻標識碼:A 文章編號:1007-9416(2016)07-0080-01
NTFS全稱為“NT File System”,是Windows NT操作系統(tǒng)的主要分區(qū)。計算機硬盤系統(tǒng)是由幾個分區(qū)組成的,主要是起數(shù)據(jù)儲存功能。人們在使用中不小心將硬盤中的文件進行格式化或者丟失掉,所在分區(qū)的文件內(nèi)容也被格式掉,一旦計算機硬盤出現(xiàn)問題,使得整個數(shù)據(jù)就會丟失掉,無法恢復(fù),進而會帶來很大麻煩和不可挽回的損失。所以研發(fā)一款專門針對硬盤格式化數(shù)據(jù)恢復(fù)的軟件顯得尤為重要。
1 NTFS文件系統(tǒng)格式化數(shù)據(jù)恢復(fù)設(shè)計
NTFS是Windows系統(tǒng)中一種數(shù)據(jù)存儲結(jié)構(gòu), NTFS文件系統(tǒng)安全性和穩(wěn)定性好,在使用的過程中不易產(chǎn)生碎片,它可以提供容錯結(jié)構(gòu)日志,并對錯誤的結(jié)構(gòu)系統(tǒng)進行記錄,可以有效地保護系統(tǒng)的安全,恢復(fù)數(shù)據(jù)文件系統(tǒng)。NTFS存放很方便,同普通文件一樣可存放在硬盤的某個部位,NTFS可作為一種共享資源,對文件及文件夾有壓縮功能。NTFS文件隨著Windows NT4.0跨入主力分區(qū)格式化的行列,它可以支持64GB的文件,性能遠遠超過了FAT32。
當用戶將硬盤格式化的方式分為NTFS時,計算機就會自動建立一個NTFS文件系統(tǒng)結(jié)構(gòu),自動建立時間,并對該文件目錄下的數(shù)據(jù)進行一一記錄清楚。在Windows平臺下操作,人們普遍應(yīng)用的是高級格式化系統(tǒng),本文主要從以下幾個方面分析Windows操作系統(tǒng)格式化數(shù)據(jù)恢復(fù)技術(shù)。如圖1所示。
1.1 NTFS文件名和數(shù)據(jù)屬性值
NTFS文件系統(tǒng)各自都有自己的類型和名稱相對獨立,且每個文件記錄中都有多個屬性,每個屬性分為屬性頭和屬性值,不同的屬性它的結(jié)構(gòu)和含義不同。MFT是NTFS卷結(jié)構(gòu)的核心主控件,它可以清楚地記錄磁盤的位置和文件的所有屬性,并存放在一個適合的區(qū)域內(nèi),在數(shù)據(jù)丟失后,如果找到了MFT控件文件,就會獲取到所有文件屬性名及相關(guān)數(shù)據(jù)。在格式化數(shù)據(jù)恢復(fù)時,10H標準信息的屬性值記錄著文件的創(chuàng)建時間、最后修改時間、硬盤鏈接數(shù)、這些信息是常駐的。30H文件名和80H數(shù)據(jù)在恢復(fù)過程中起著至關(guān)重要的作用。
1.2 MFT 區(qū)域起始位置數(shù)據(jù)屬性獲取
NTFS文件系統(tǒng)是有備份功能,如果磁盤上的某個扇數(shù)據(jù)丟失了, NTFS依然可以找到關(guān)鍵數(shù)據(jù)。在進行數(shù)據(jù)格式化時,就會變成FAT32文件,建立一個主文件表MFT,它掃描的位置是從16扇區(qū)開始,把 MFT前16項元數(shù)據(jù)儲存下來,如果MFT中數(shù)據(jù)丟失,NTFS自動將MFT轉(zhuǎn)移到文件系統(tǒng)的其他硬盤上,保證操作系統(tǒng)正常運行。
1.3 目錄結(jié)點生成
在對格式化的數(shù)據(jù)進行恢復(fù)時,首先查找到目錄名,即:文件記錄頭、標準屬性、文件名屬性和數(shù)據(jù)流屬性,需要查找出與每個文件相關(guān)的目錄名,用以恢復(fù)操作。MFT文件能自動備份,一般是存儲MFT前16項的內(nèi)容,數(shù)據(jù)丟失后,我們可以通過查找MFT有關(guān)的信息數(shù)據(jù)和根目錄名稱找到丟失的數(shù)據(jù),還可以將根目錄設(shè)置成父目錄存儲下來,一般以DIR形式的目錄名進行查找。
1.4 目錄樹的重構(gòu)
NTFS要將一個目錄MFT記錄進行重新排序,記錄下目錄中文件名和子目錄名,并保存在索引根屬性中。在NTFS系統(tǒng)中,它會有一個文件名索引,存放在4KB的索引緩沖區(qū)中,通過平衡樹存儲磁盤上的數(shù)據(jù),把時間和文種復(fù)制下來。目前想達到理想的狀態(tài)是非常困難的,只能是提高目錄瀏覽速度來解決此類問題。
1.5 NTFS數(shù)據(jù)恢復(fù)技術(shù)的實現(xiàn)
對丟失的數(shù)據(jù)查找到信息后,需要重新建立一個與原程序向?qū)?yīng)的文件目錄,執(zhí)行物理地址的讀取,NTFS文件系統(tǒng)是按簇來分配,每文件都有一個文件記錄。MFT是一個文件表,通過它來確定硬盤存儲的位置、屬性、大小等信息,找到壓縮文件在MFT中的記錄,查看磁盤文件的大小和位置,文件所在的區(qū)域,在讀取文件時時從頭至尾進行讀取的,信息會自動找到,文件也會提取出來。這樣,丟失的數(shù)據(jù)得以恢復(fù),文件會一一查找到。
2 程序恢復(fù)中數(shù)據(jù)結(jié)構(gòu)的介紹
2.1 DBR程序結(jié)構(gòu)
Typedef striTFS_DBR{
BYTEE LogDr;
WORD BPSector;
BYTEE SPCluster;
BYTEE MDescriptor;
LARGRE_INTEGER TSectors;
LARGRE_INTEGER MCluster;
LARGRE_ INTEGER MSSector;
LARGRE_ INTEGER MESector;
LARGRE_ INTEGER MSize;
DWORD CPMFT;
DWORD CPIndex;
BYTE FileSystem[5];
}NTFS_DBR;
2.2 文件存儲結(jié)構(gòu)
Typeaef struit DataRin{
DWORD ClusterNums;
LARGE _INTENER StartCluster;
} DATARUN
3 結(jié)語
本文主要論述了NTFS環(huán)境下格式化磁盤數(shù)據(jù)恢復(fù)技術(shù)分析與實踐,目的是獲取文件系統(tǒng)中的MFT起始位置,生成文件系統(tǒng)的目錄樹,讀取文件系統(tǒng)中目錄樹的數(shù)據(jù)存儲地址,查找出詳細的數(shù)據(jù)記錄,寫入新的文件中,從而實現(xiàn)丟失數(shù)據(jù)的恢復(fù)操作。
參考文獻
[1]鄭平泰.《磁盤數(shù)據(jù)安全技術(shù)與編程實例》.中國水利水電出版社,2007.
[2]張麗.《Windows NTFS下硬盤格式化數(shù)據(jù)恢復(fù)技術(shù)研究》.計算機光盤軟件與應(yīng)用,2012.