資料恢復原理 FAT32資料恢復原理

2021-10-25 12:30:22 字數 1857 閱讀 8285

fat32資料恢復原理

結構:mbr-dbr-dbr2-fat1-fat2-dir-data

fat32

資料恢復原理

由於fat與fdt對資料的鏈式儲存管理的,可以通過鏈式搜尋查詢。只有fat表和fdt配合使用,才能可以統一管理整個磁碟檔案,也就可以準確定位被刪除的檔案的確切位置。

在 window作業系統下對檔案的刪除工作,是將fdt中該檔案的第乙個字元改「e5」來表示該檔案已經刪除,同時改寫引導扇區的第二個扇區中表示該分割槽點用空間大小的相應資訊。因此,在設計的時候,根據其儲存結構,對相應的地方進行修改,搜尋e5刪除標誌,再按被刪檔案資料鏈進行恢復。

具體步驟如下:

(1) 獲取磁碟分割槽型別,分割槽儲存空間,fat、fdt、檔案等儲存的起始扇區。

(2) 獲取fat、fdt表項內的簇資訊,即簇的刪除、未使用、壞簇、以及檔案占用簇的起始扇區資訊等。

(3) 通過fat、fdt計算不同檔案在物理扇區的起始位置,包括有標識e5的刪除檔案起始位置、檔案型別、占用大小和儲存的所在簇。

(4) 改變刪除位,通過第3步得到的結果,並按fat表對檔案進行鏈式查詢並快取,當達到檔案所在簇尾時,停止操作。

(5) 對儲存的資料進行轉換,生成檔案。

(6) 對檔案進行異區儲存。而作業系統在讀寫檔案時,會根據fdt中的起始單元,結合fat表就可以知道檔案在磁碟的具體位置,然後順序讀取每個簇的內容,檔案的查詢如圖4-1所示。具體的方法如下:

(1)在檔案目錄項fdt中找到存放在fat表中的檔案file的位址m(2)2*m得到fat表中file檔案資料鏈表首位址b。

(3)在fat表中的b位址中,存放有檔案file資料鏈表頭p。

(4)p*4得到在fat表項中的下乙個偏移位置,即下乙個資料鏈表。

(5)如果下乙個資料鏈表內的資訊為0ffffffh,則表示檔案儲存已經結束圖4-1查詢檔案流程需要說明的是,新建檔案時,系統在fat表中查詢未用的簇記錄在新檔案目錄項中做為首簇;fdt檔案目錄項中,第0~7位元組為檔名(若有剩餘位元組用20填充)第1位元組表明了該檔案的狀態,第1位元組又表明了檔案的狀態,00he5h及其它字元。當該位元組為00h時,表示該目錄項是空表項,可以使用。當為e5h時,表示該目錄項以前用過,但是檔案被已經刪除了。‍

fat32結構

mbr+dpt+'55aa'

62個保留扇區

(系統扇區)

作業系統dbr

dbr記錄每簇扇區數,扇區總數, fat表大小

fat1(大小由dbr知)

fat2(重複)

根目錄

資料區按簇存放(簇列為:2,3,4,5……,以2開始)

剩餘扇區

第二分割槽dpt+』55aa』

62個保留扇區

(系統扇區)

作業系統dbr

31個保留扇區

fat1

fat2(重複)

根目錄

資料區按簇存放(簇列為:2,3,4,5……,以2開始)

剩餘扇區

因為學會了「漁」,還害怕沒有「魚」嗎?

|長按關注|

資料恢復原理實驗

用winhex檢視硬碟資訊 1.為虛擬機器新增一塊硬碟 1 登入到實驗主機上。右擊 我的電腦 管理 2 點選磁碟管理,會出現磁碟初始化和轉換嚮導,利用嚮導新增一塊新的磁碟 3 點選下一步選擇要初始化的磁碟,預設即可 4 選擇要轉換的磁碟,勾選 磁碟 1 一直下一步,完成新增過程後會發現多了一塊磁碟1...

資料恢復原理實驗

z任務一 用winhex檢視硬碟資訊 1 為虛擬機器新增一塊硬碟 登入到實驗主機上。右擊 我的電腦 管理 點選磁碟管理,會出現磁碟初始化和轉換嚮導,利用嚮導新增一塊新的磁碟 點選下一步選擇要初始化的磁碟,預設即可 選擇要轉換的磁碟,勾選 磁碟 1 下一步直至完成 完成新增過程後會發現多了一塊磁碟1,...

資料恢復原理解說

在linux系統不小心把一張使用者表的資料給刪除了怎麼辦啊,不要慌,如果裝了mysql bin的話 就好處理,只要按時間執行裡面的增,刪,改的sql語句就行啦。資料恢復的原理 在linux裡面資料恢復的原理是,把我們資料庫的所有的,增,刪,改的操作 的sql語句,寫入檔案,到時按時間點來,執行這些語...