《數據重現:檔案系統原理精解與數據恢復最佳實踐》是國內第一本全面介紹Windows及非Windows檔案系統的數據恢復技術書籍,不僅涵蓋面廣,內容也達到了足夠的深度。本書同時對常見RAID類型及包括HP內外雙循環、RAID 1E、RAID6及RAID DP在內的異種或新型RAID類型進行了詳細的分析和介紹。
本書不僅對常見的DOS分區體系及Windows的FAT檔案系統、NTFS檔案系統進行了詳細的介紹,更涵蓋了蘋果機分區、BSD分區、SPRC平台的Sun Solaris分區、GPT分區等分區方式,以及Linux的Ext2/Ext3、Unix的UFS1/UFS2、MAC的HFS+等檔案系統布局及詳細數據結構的講解,多數資料的詳細程度是目前絕無僅有的。另外,本書還充分考慮到初學者剛接觸數據恢復實際工作時無從下手的感覺,從數據恢復前的準備到實際恢復工作的進行,從理論分析到數據恢復軟體的使用,一步步帶領讀者踏入數據恢復的殿堂。
更為重要的是,為了使讀者有接近實戰的機會練習RAID分析與恢復技術,配書光碟(雙DVD)中附送了近30個精心製作的RAID模型,包含了RAID0、RAID5、RAID 1E、HP內外雙循環陣列等。
本書適合檔案系統研究人員、數據恢復從業人員、數據恢復教學人員、數據恢復編程人員、電子取證工作者、數據安全研究人員、系統管理員及數據安全存儲與災難恢復愛好者閱讀和使用。
馬林,天津市電子技術研究所專業數據存儲安全與數據災難拯救研究員,首席數據恢復專家,天亞數據恢復技術總監。 多年來致力於數據存儲與檔案系統的研究,時刻跟蹤數據恢復技術的發展方向。受天津市國家保密局指定,為黨政機關、科研院所等機構提供專業涉密數據恢復保障。同時,還將研究成果套用於民用數據恢復領域,並在實際工作中積累和總結了大量的實踐經驗。
PART 1 理論篇
第1章 數據恢復相關基礎
1.1 硬碟探秘
1.1.1 硬碟結構
1.1.2 硬碟接口
1.1.3 磁軌、扇區與柱面
1.1.4 硬碟的啟動過程
1.1.5 硬碟的性能指標
1.1.6 定址方式
1.2 計算機運行流程
1.2.1 基本概念
1.2.2 計算機的啟動過程
1.3 “數”之體驗
1.3.1 數制
1.3.2 數制間的轉換
1.3.3 取整與取余運算
1.3.4 數的存儲格式
1.4 工具軟體
1.4.1 虛擬磁碟軟體InsPro Disk
1.4.2 十六進制編輯軟體Winhex
1.4.3 硬碟檢測軟體MHDD
第2章 分區
2.1 概述
2.1.1 分區與卷
2.1.2 Unix下卷的使用
2.1.3 扇區地址
2.1.4 根據合理性判斷分區信息的正確性
2.1.5 數據恢復及電子取證
2.2 DOS分區
2.2.1 概述
2.2.2 主引導記錄扇區MBR
2.2.3 擴展引導記錄扇區EBR
2.2.4 數據恢復及電子取證
2.3 Apple分區
2.3.1 概述
2.3.2 Apple磁碟布局
2.3.3 分區表項數據結構
2.3.4 數據恢復與電子取證
2.4 BSD分區
2.4.1 BSD分區概述
2.4.2 Free BSD分區
2.4.3 NetBSD與OpenBSD 分區
2.4.4 磁碟標籤數據結構
2.4.5 磁碟標籤實例分析
2.4.6 總結
2.5 Sun Solaris分區
2.5.1 概述
2.5.2 Sparc平台下的Sun Solaris分區
2.5.3 i386平台下的Sun Solaris分區
2.5.4 總結
2.6 GPT分區
2.6.1 概述
2.6.2 GPT磁碟總體布局
2.6.3 數據結構
2.6.4 總結
2.7 移動介質分區
第3章 FAT檔案系統
3.1 檔案系統總論
3.2 FAT檔案系統概述
3.3 FAT檔案系統整體布局
3.4 FAT32的保留區
3.4.1 引導扇區
3.4.2 引導代碼
3.4.3 FSINFO信息扇區
3.5 FAT32的FAT表
3.5.1 FAT表概述
3.5.2 FAT表的特性
3.5.3 FAT表的使用
3.5.4 其他
3.6 FAT32的數據區
3.6.1 根目錄
3.6.2 子目錄
3.6.3 目錄項
3.7 FAT12/16檔案系統
3.7.1 FAT12/16檔案系統概述
3.7.2 引導扇區
3.7.3 FAT表
3.7.4 根目錄與目錄項
3.8 分配策略
3.8.1 簇的分配策略
3.8.2 目錄項的分配策略
3.9 檔案的建立與刪除
3.10 總結
3.10.1 數據恢複分析
3.10.2 取證分析
第4章 NTFS檔案系統
4.1 NTFS概述
4.1.1 概述
4.1.2 基本概念
4.2 NTFS檔案系統總體布局
4.3 引導扇區
4.4 主檔案表MFT
4.4.1 基本概述
4.4.2 Windows 2000的MFT項
4.4.3 Windows XP的MFT項
4.5 MFT屬性
4.5.1 屬性的結構
4.5.2 常規屬性類型
4.5.3 其他屬性
4.6 檔案系統元檔案
4.6.1 $MFT檔案
4.6.2 $MFTMirr檔案
4.6.3 $LogFile檔案
4.6.4 $Volume檔案
4.6.5 $AttrDef檔案
4.6.6 $Root檔案
4.6.7 $Bitmap檔案
4.6.8 $Boot檔案
4.6.9 $Secure檔案
4.6.10 $UsnJrnl檔案
4.6.11 $Quota檔案
4.6.12 $ObjId檔案
4.7 分配策略
4.7.1 簇空間分配策略
4.7.2 MFT項分配策略
4.7.3 屬性分配策略
4.8 時間值的更新
4.9 檔案的建立與刪除
4.9.1 建立檔案
4.9.2 刪除檔案
4.10 總結
4.10.1 分析注意事項
4.10.2 數據恢復與取證分析
第5章 ExtX檔案系統
5.1 ExtX檔案系統概述
5.2 ExtX檔案系統整體布局
5.3 超級塊
5.3.1 超級塊數據結構
5.3.2 超級塊實例分析
5.4 塊組描述符表和塊組描述符
5.4.1 塊組描述符數據結構
5.4.2 塊組描述符實例分析
5.5 塊點陣圖
5.5.1 塊點陣圖的工作方式
5.5.2 塊點陣圖實例分析
5.6 i-節點點陣圖
5.6.1 i-節點點陣圖實例
5.6.2 定位一個i-節點的點陣圖
5.7 i-節點表與i-節點
5.7.1 i-節點數據結構
5.7.2 i-節點實例分析
5.7.3 i-節點的屬性
5.7.4 i-節點中時間值的更新
5.8 擴展屬性
5.8.1 擴展屬性的結構
5.8.2 擴展屬性實例分析
5.9 目錄項
5.9.1 目錄項數據結構
5.9.2 目錄項的特性
5.9.3 目錄項實例分析
5.10 連結和掛載點
5.10.1 連結
5.10.2 掛載點
5.11 Hash樹
5.11.1 Hash樹數據結構
5.11.2 Hash樹實例分析
5.12 檔案系統日誌
5.12.1 數據結構
5.12.2 日誌實例分析
5.13 分配策略
5.13.1 塊的分配策略
5.13.2 i-節點分配策略
5.13.3 檔案名稱空間分配策略
5.14 檔案的建立與刪除
5.14.1 建立檔案
5.14.2 刪除檔案
5.15 總結
5.15.1 分析注意事項
5.15.2 數據恢復與電子取證
第6章 UFS檔案系統
6.1 概述
6.2 UFS檔案系統整體布局
6.3 超級塊
6.3.1 概述
6.3.2 數據結構
6.4 柱面組摘要
6.5 柱面組描述符
6.5.1 概述
6.5.2 數據結構
6.5.3 點陣圖
6.6 引導代碼
6.7 i-節點
6.7.1 UFS1的i-節點
6.7.2 UFS2的i-節點
6.8 目錄項
6.8.1 數據結構
6.8.2 實例分析
6.9 分配策略
6.9.1 存儲空間分配策略
6.9.2 i-節點分配策略
6.9.3 目錄項分配策略
6.10 檔案的建立與刪除
6.10.1 建立檔案
6.10.2 刪除檔案
6.11 總結
6.11.1 分析注意事項
6.11.2 數據恢復與取證分析
第7章 HFS+檔案系統
7.1 HFS封裝
7.1.1 HFS卷主目錄塊結構
7.1.2 HFS卷主目錄塊實例分析
7.2 概述
7.2.1 HFS+的改進
7.2.2 基本概念
7.2.3 主要數據結構類型
7.2.4 HFS+特性
7.3 HFS+檔案系統整體布局
7.4 卷頭
7.4.1 數據結構
7.4.2 實例分析
7.5 節點
7.5.1 節點的種類
7.5.2 節點的基本結構
7.5.3 頭節點
7.5.4 圖節點
7.5.5 索引節點
7.5.6 葉節點
7.5.7 節點的使用
7.5.8 HFS+節點與HFS節點的區別
7.6 目錄檔案
7.6.1 目錄檔案中檔案項的key部分
7.6.2 目錄檔案中檔案項的數據部分
7.7 域溢出檔案
7.7.1 域溢出檔案中檔案項的key部分
7.7.2 域溢出檔案中檔案項的數據部分
7.7.3 域溢出檔案節點實例分析
7.7.4 域溢出檔案的使用
7.8 壞塊檔案
7.9 分配檔案
7.10 屬性檔案
7.10.1 叉數據屬性
7.10.2 域屬性
第8章 多磁碟卷
8.1 RAID
8.1.1 RAID級別簡介
8.1.2 RAID中的基本概念
8.1.3 RAID0陣列原理
8.1.4 RAID1陣列原理
8.1.5 RAID4陣列原理
8.1.6 RAID5陣列原理
8.1.7 RAID6陣列原理
8.1.8 RAID 1E陣列原理
8.1.9 RAID DP陣列原理
8.1.10 RAID的實現
8.1.11 數據恢復及取證注意事項
8.2 磁碟跨區
8.2.1 概述
8.2.2 Linux MD
8.2.3 Linux LVM
8.2.4 Microsoft Windows LDM
8.2.5 總結
PART 2 實踐篇
第9章 數據恢復前的準備
9.1 寫在數據恢復之前的話
9.2 檢測磁碟
9.2.1 用MHDD檢測磁碟
9.2.2 用MHDD清除主引導扇區“55AA”標誌
9.2.3 用PC-3000檢測磁碟
9.3 壞道處理
9.4 鏡像磁碟
9.4.1 什麼是“鏡像磁碟”
9.4.2 什麼情況下需要對磁碟進行鏡像
9.4.3 用Media Tools鏡像磁碟
9.4.4 用HDClone鏡像磁碟
9.4.5 用Winhex鏡像磁碟
9.5 分區及格式化對磁碟的寫入
9.5.1 Winhex“比較”功能的使用
9.5.2 分區過程對磁碟的寫入
9.5.3 格式化過程對磁碟的寫入
第10章 基本數據恢復
10.1 分區恢復
10.1.1 主分區表損壞恢復
10.1.2 重新分區未格式化
10.1.3 分區布局改變並進行了格式化
10.1.4 使用FinalData快速尋找分區
10.2 DBR損壞後的恢復
10.2.1 FAT檔案系統DBR損壞後的恢復
10.2.2 NTFS檔案系統DBR損壞後的恢復
10.3 格式化恢復
10.3.1 原FAT32格式化成FAT32
10.3.2 原FAT32格式化成NTFS
10.3.3 原NTFS格式化成NTFS
10.3.4 原NTFS格式化成FAT32
10.4 刪除恢復
10.4.1 FAT16檔案系統下的刪除
10.4.2 FAT32檔案系統下的刪除
10.4.3 NTFS檔案系統下的刪除
10.5 數據恢復軟體的使用
10.5.1 使用R-Studio恢複數據
10.5.2 使用Recover My Files恢複數據
第11章 RAID數據恢復
11.1 概述
11.2 FAT表在陣列恢復中的作用
11.2.1 利用FAT表計算塊大小
11.2.2 利用FAT表判斷數據塊順序
11.2.3 利用FAT表尋找校驗塊
11.3 MFT在陣列恢復中的作用
11.3.1 利用MFT記錄編號判斷塊大小及數據塊順序
11.3.2 利用MFT尋找校驗塊
11.4 RAID0陣列恢復
11.4.1 參數分析
11.4.2 使用Winhex重組數據
11.4.3 使用R-Studio恢複數據
11.5 RAID5陣列恢復
11.5.1 循環方向的判斷
11.5.2 同步與異步的判斷
11.5.3 計算各個成員盤第一個校驗塊的位置
11.5.4 利用FAT恢復演示
11.5.5 利用MFT恢復演示
11.6 HP內外雙循環陣列恢復
11.7 RAID 1E陣列恢復
11.7.1 參數判斷
11.7.2 數據恢復
附錄A Win32環境下磁碟操作五大函式
附錄B 檔案後綴名速查表
檔案系統將其下層的存儲空間虛擬成檔案的方式向其上層呈現,是整個數據系統中最關鍵的一環,是影響IO性能的一個瓶頸點,檔案系統如果出了問題,輕則數據丟失,重則數據全毀。本書全面介紹了各種檔案系統原理,而且講述了主流數據恢復原理和操作,是一本不可多得的好書!
《大話存儲》作者:張冬 網名:冬瓜頭
從9.11事件到四川大地震,從CIH到熊貓燒香,您是否想過,在信息引領一切的時代,這些災難過後,銀行能不能正常工作,企業是否能正常運營?這一切都取決於數據是否遭受威脅,遭受威脅的數據又是否能夠重現!本書為你鋪就了一條從入門到精通的數據恢復學習之路。而且,數據恢復程式設計需要透徹了解檔案系統的數據結構及工作方式,本書是目前公開技術資料最多的一本相關書籍,是難得的學習及參考書!
中國礦業大學博士、哈市海雲數據恢復總工、黑龍江科技學院軟體講師 江傳力
本書有內容,有深度,是數據恢復不可多得的好書。回想1996年開始研究數據恢復技術的時候,要想找到這種相關的資料是非常困難的。為了提高國內數據恢復技術,精心創辦了技術交流的平台中國硬碟基地,一舉成為國內最專業的硬碟維修與數據恢復技術論壇。時至今日,本書的出版也一定會成為數據恢復技術人員的一大福音!
中國十大存儲論壇之一“中國硬碟基地”網站創始人:田茂帥(八喜)
該書不僅為有志於數據恢復技術研究的人士提供了難得的技術資料,更兼顧了初學數據恢復者不知從何學起、不知如何下手恢複數據的狀況。作者結合實際工作經驗,從如何檢測磁碟、如何克隆磁碟、如何恢複數據、數據恢復軟體恢復結果分析等一步步進行介紹。本書的作者馬林,首次將數據恢復行業的一些核心技術內容放到書中,很有勇氣!希望該書的出版能為中國的數據恢復行業做出應有的貢獻!
——08北京奧林匹克運動會特聘信息網路安全專家 北京市網路行業協會信息安全應急回響與處置中心主任 王江民