数据恢复技术深度揭秘(第二版) pdf

数据恢复技术深度揭秘(第二版)

内容简介

《数据恢复技术深度揭秘》第二版是在第一版的基础之上增加和充实了服务器磁盘阵列(RAID)的恢复技术,新增了大量实战案例的分析和讲解,并精选书中的部分案例由作者制作成视频教学资料(DVD光盘)随书附赠。本书从逻辑类恢复和物理类恢复两个层面全面讲解当前实用的数据恢复技术。在逻辑类数据恢复方面,内容包括MBR磁盘分区、动态磁盘分区、GPT磁盘分区、Solaris分区、APM分区、BSD分区的恢复技术;Windows平台的FAT32、FAT16文件系统、NTFS文件系统、ExFAT文件系统的恢复技术;UNIX平台的UFS1、UFS2文件系统恢复技术;Apple平台的HFS+文件系统恢复技术;Linux平台的EXT3、EXT4文件系统恢复技术;还包括Windows、UNIX、Apple、Linux平台的RAID-0、RAID-1、RAID -1E、RAID-5、RAID-5EE、RAID-6、HP双循环等磁盘阵列恢复技术。在物理类数据恢复方面,内容包括各老品牌硬盘出现电路故障、磁头故障、电机故障、扇区读取故障、固件故障后数据恢复的方法,还包括优盘无法识别的恢复方法。

作者简介

刘伟,原北京信息科技大学数据恢复研究所数据恢复专家,国内外多家数据恢复公司的高级顾问,长期从事数据恢复技术的研究,工作在数据恢复实践和教学第一线,理论基础扎实、实践经验丰富。 从2004年3月开始受聘于国家信息产业部(现国家工业和信息化部),获“信息产业部数据恢复技术培训特聘专家顾问”称号,负责信息产业部数据恢复技术培训的课程研发及教学工作,在授课过程中很好的将高深的理论演绎得形象化、简单化,以便于学生充分理解,受到了各地学员的一致好评。 著有《数据恢复高级技术》、《数据恢复方法及案例分析》、《数据恢复技术深度揭秘》(第一版)、《RAID数据恢复技术揭秘》等数据恢复专业书籍,并且均被信息产业部数据恢复培训指定为专用培训教材。

目录

第一篇 数据恢复入门与进阶知识储备
第1章 计算机中数据的记录方法 2
1.1 数据的表示方法 2
1.1.1 计算机中数据的含义 2
1.1.2 数值数据在计算机中的表示方法 6
1.1.3 字符数据在计算机中的表示方法 11
1.1.4 图形数据在计算机中的表示方法 14
1.2 数据存储的字节序与位序 14
1.2.1 Endian的含义 14
1.2.2 Little-endian的含义 15
1.2.3 Big-endian的含义 15
1.2.4 字节序与CPU架构的关系 15
1.2.5 位序的含义 17
1.3 数据的逻辑运算 17
1.3.1 逻辑或 17
1.3.2 逻辑与 18
1.3.3 逻辑非 18
1.3.4 逻辑异或 18
1.4 数据恢复中常用的数据结构 19
1.4.1 数据结构简介 19
1.4.2 树 21
1.4.3 二叉树 23
1.4.4 B树、B-树、B+树和B*树 24
1.4.5 树的遍历 27
第2章 现代硬盘结构揭秘 29
2.1 机械硬盘的物理结构揭秘 29
2.1.1 硬盘的外壳及盘标信息 29
2.1.2 硬盘的电路结构 32
2.1.3 硬盘的磁头定位驱动系统 36
2.1.4 硬盘的主轴系统 37
2.1.5 硬盘的数据控制系统 37
2.1.6 硬盘的盘片 38
2.1.7 硬盘的区段及物理C/H/S 39
2.1.8 硬盘的接口技术 40
2.1.9 硬盘的主要性能指标 47
2.2 机械硬盘的逻辑结构揭秘 49
2.2.1 硬盘的逻辑磁道 49
2.2.2 硬盘的逻辑扇区 50
2.2.3 硬盘的逻辑柱面 50
2.2.4 硬盘的逻辑磁头 51
2.2.5 硬盘的逻辑C/H/S 51
2.2.6 硬盘的28位LBA及48位LBA 51
2.3 固态硬盘结构揭秘 52
2.3.1 固态硬盘的结构 52
2.3.2 固态硬盘的优点 54
2.3.3 固态硬盘的缺点 55
第3章 数据恢复基本工具揭秘 56
3.1 磁盘编辑器类工具 56
3.1.1 WinHex使用方法详解 56
3.1.2 DiskExplorer for Fat使用方法详解 72
3.1.3 DiskExplorer for NTFS使用方法详解 78
3.1.4 DiskExplorer for Linux使用方法详解 81
3.2 虚拟工具 83
3.2.1 虚拟硬盘工具使用方法详解 83
3.2.2 虚拟机使用方法详解 86
第二篇 逻辑类数据恢复技术揭秘
第4章 Windows系统数据恢复技术 90
4.1 Windows系统的MBR磁盘分区 90
4.1.1 主引导记录MBR的结构和作用 90
4.1.2 主磁盘分区的结构分析 95
4.1.3 扩展分区的结构分析 100
4.1.4 MBR及EBR被破坏的分区恢复实例 106
4.1.5 分区误删除的恢复实例 117
4.1.6 系统误Ghost后的分区恢复实例 125
4.2 Windows系统的动态磁盘卷 129
4.2.1 动态磁盘概述 129
4.2.2 动态磁盘卷的种类及创建方法 130
4.2.3 动态磁盘LDM结构原理详解 132
4.2.4 MBR磁盘误转换为动态磁盘的恢复实例 155
4.2.5 动态磁盘扩展卷丢失的恢复实例 159
4.3 Windows系统的GPT磁盘分区 171
4.3.1 GPT磁盘分区基本介绍 171
4.3.2 GPT磁盘分区的创建方法 173
4.3.3 GPT磁盘分区的结构原理 177
4.3.4 GPT磁盘分区丢失的恢复实例 184
4.4 FAT16文件系统详解 189
4.4.1 FAT16文件系统结构总览 189
4.4.2 FAT16文件系统的DBR分析 190
4.4.3 FAT16文件系统的FAT表分析 194
4.4.4 FAT16文件系统的FDT分析 197
4.4.5 FAT16文件系统目录项分析 198
4.4.6 FAT16文件系统根目录与子目录的管理 207
4.4.7 FAT16文件系统删除文件的分析 209
4.4.8 FAT16文件系统误格式化的分析 213
4.4.9 FAT16文件系统DBR手工重建的实例 215
4.5 FAT32文件系统详解 218
4.5.1 FAT32文件系统结构总览 218
4.5.2 FAT32文件系统的DBR分析 219
4.5.3 FAT32文件系统的FAT表分析 223
4.5.4 FAT32文件系统的数据区分析 225
4.5.5 FAT32文件系统目录项分析 226
4.5.6 FAT32文件系统根目录与子目录的管理 230
4.5.7 FAT32文件系统删除文件的分析 235
4.5.8 FAT32文件系统删除文件后目录项起始簇号高位清零的分析 239
4.5.9 FAT32文件系统误格式化的分析 244
4.5.10 FAT32文件系统DBR破坏的恢复实例 247
4.5.11 FAT32分区文件乱码的手工恢复实例 248
4.5.12 FAT32分区被苹果电脑误格式化后的完美恢复实例 253
4.6 NTFS文件系统详解 263
4.6.1 NTFS文件系统基本介绍 263
4.6.2 NTFS文件系统结构总览 264
4.6.3 NTFS文件系统引导扇区分析 266
4.6.4 元文件$MFT分析 270
4.6.5 文件记录分析 272
4.6.6 10H属性分析 281
4.6.7 20H属性分析 282
4.6.8 30H属性分析 284
4.6.9 40H属性分析 287
4.6.10 50H属性分析 287
4.6.11 60H属性分析 292
4.6.12 70H属性分析 292
4.6.13 80H属性分析 294
4.6.14 90H属性分析 297
4.6.15 A0H属性分析 299
4.6.16 B0H属性分析 299
4.6.17 C0H属性分析 300
4.6.18 D0H属性分析 301
4.6.19 E0H属性分析 302
4.6.20 100H属性分析 302
4.6.21 元文件$MFTMirr分析 302
4.6.22 元文件$LogFile分析 304
4.6.23 元文件$Volume分析 313
4.6.24 元文件$AttrDef分析 315
4.6.25 元文件$Root分析 318
4.6.26 元文件$Bitmap分析 319
4.6.27 元文件$Boot分析 320
4.6.28 元文件$BadClus分析 321
4.6.29 元文件$Secure分析 322
4.6.30 元文件$UpCase分析 324
4.6.31 元文件$Extend分析 325
4.6.32 元文件$ObjId分析 326
4.6.33 元文件$Quota分析 327
4.6.34 元文件$Reparse分析 329
4.6.35 元文件$UsnJrnl分析 330
4.6.36 NTFS的索引结构分析 331
4.6.37 手工遍历NTFS的B+树 335
4.6.38 NTFS的EFS加密分析 339
4.6.39 NTFS文件系统删除文件的分析 341
4.6.40 NTFS文件系统格式化的分析 347
4.6.41 NTFS文件系统DBR手工重建的实例 350
4.7 ExFAT文件系统详解 354
4.7.1 ExFAT文件系统基本介绍 354
4.7.2 ExFAT文件系统结构总览 356
4.7.3 ExFAT文件系统的DBR分析 357
4.7.4 ExFAT文件系统的FAT表分析 360
4.7.5 ExFAT文件系统的簇位图文件分析 361
4.7.6 ExFAT文件系统的大写字符文件分析 362
4.7.7 ExFAT文件系统的目录项分析 363
4.7.8 ExFAT文件系统根目录与子目录的管理 371
4.7.9 ExFAT文件系统删除文件的分析 376
4.7.10 ExFAT文件系统误格式化的分析 377
4.7.11 ExFAT文件系统DBR手工重建的实例 380
4.7.12 能够支持ExFAT文件系统的恢复工具 385
第5章 UNIX系统数据恢复技术 386
5.1 UNIX家族介绍 386
5.1.1 UNIX的起源及分裂 386
5.1.2 UNIX分类及特点 387
5.2 UNIX的分区详解 389
5.2.1 Solaris分区基本介绍 389
5.2.2 Sparc Solaris分区结构分析 391
5.2.3 Sparc Solaris分区恢复实例 396
5.2.4 x86 Solaris分区结构分析 399
5.2.5 x86 Solaris分区恢复实例 404
5.2.6 Free BSD分区结构分析 405
5.2.7 Free BSD分区恢复实例 410
5.2.8 Open BSD分区结构分析 413
5.3 UFS1及UFS2文件系统详解 417
5.3.1 UFS文件系统基本介绍 417
5.3.2 UFS文件系统结构总览 418
5.3.3 UFS文件系统的引导块分析 419
5.3.4 UFS文件系统的超级块分析 420
5.3.5 UFS文件系统的柱面组概要分析 435
5.3.6 UFS文件系统的柱面组描述符分析 437
5.3.7 UFS文件系统的位图分析 441
5.3.8 UFS文件系统的i-节点分析 443
5.3.9 UFS文件系统的目录项分析 450
5.3.10 UFS文件删除与恢复的分析 454
5.3.11 UFS文件系统超级块的恢复实例 462
5.3.12 UNIX系统数据恢复专业工具详解 463
第6章 Apple系统数据恢复技术 466
6.1 Apple电脑介绍 466
6.1.1 Apple电脑的起源与发展 466
6.1.2 Mac操作系统的发展 467
6.2 Apple电脑的分区结构详解 468
6.2.1 APM分区结构分析 468
6.2.2 APM分区恢复实例 477
6.2.3 GPT分区结构分析 480
6.3 HFS+文件系统详解 482
6.3.1 HFS+文件系统基本介绍 482
6.3.2 HFS+文件系统结构总览 484
6.3.3 HFS+文件系统的卷头分析 485
6.3.4 HFS+文件系统的头节点分析 491
6.3.5 HFS+文件系统的位图节点分析 497
6.3.6 HFS+文件系统的索引节点分析 498
6.3.7 HFS+文件系统的叶节点分析 499
6.3.8 HFS+文件系统节点的综合应用 500
6.3.9 HFS+文件系统的编录文件分析 501
6.3.10 HFS+文件系统的盘区溢出文件分析 510
6.3.11 HFS+文件系统的分配文件分析 513
6.3.12 HFS+文件系统的属性文件分析 513
6.3.13 HFS+文件系统的坏块文件分析 515
6.3.14 手工遍历HFS+的B?树 515
6.3.15 HFS+文件删除与恢复的分析 518
6.3.16 HFS+文件系统卷头的恢复实例 520
6.3.17 Apple系统数据恢复专业工具详解 521
第7章 Linux系统数据恢复技术 525
7.1 Linux系统介绍 525
7.1.1 Linux系统的起源与发展 525
7.1.2 Linux系统的分类及特点 526
7.2 Linux系统的分区结构详解 528
7.2.1 MBR磁盘分区结构分析 528
7.2.2 MBR磁盘分区恢复实例 531
7.2.3 GPT分区结构分析 534
7.3 Ext3文件系统结构详解 537
7.3.1 Ext3文件系统基本介绍 537
7.3.2 Ext3文件系统结构总览 538
7.3.3 Ext3文件系统的超级块分析 539
7.3.4 Ext3文件系统的块组描述符分析 545
7.3.5 Ext3文件系统的块位图分析 547
7.3.6 Ext3文件系统的i-节点位图分析 548
7.3.7 Ext3文件系统的i-节点分析 550
7.3.8 Ext3文件系统的目录项分析 556
7.3.9 Ext3文件删除与恢复的分析 559
7.3.10 Ext3文件系统超级块的恢复实例 570
7.3.11 Linux系统数据恢复专业工具详解 572
7.4 Ext4文件系统分析 575
7.4.1 Ext4文件系统介绍 575
7.4.2 Ext4文件系统的特点 576
7.4.3 Ext4文件系统的结构 577
7.4.4 Ext4文件系统的向前与向后兼容 579
第三篇 物理类数据恢复技术揭秘
第8章 硬盘物理故障的种类及判定 582
8.1 硬盘外部物理故障的种类和判定方法 582
8.1.1 电路板供电故障 582
8.1.2 电路板接口故障 584
8.1.3 电路板缓存故障 584
8.1.4 电路板BIOS故障 585
8.1.5 电路板电机驱动芯片故障 585
8.2 硬盘内部物理故障的种类和判定方法 586
8.2.1 磁头组件故障 586
8.2.2 主轴电机故障 587
8.2.3 盘片故障 588
8.2.4 固件故障 589
第9章 硬盘电路板故障数据恢复方法 590
9.1 维修法 590
9.1.1 电路板常见故障及维修方法 590
9.1.2 希捷硬盘电路板的故障及检测方法 591
9.1.3 西部数据硬盘电路板的故障及检测方法 592
9.2 替换法 592
9.2.1 替换法介绍 592
9.2.2 希捷3.5英寸硬盘电路板兼容性判定及替换方法 593
9.2.3 希捷2.5英寸硬盘电路板兼容性判定及替换方法 595
9.2.4 西部数据3.5英寸硬盘电路板兼容性判定及替换方法 595
9.2.5 西部数据2.5英寸硬盘电路板兼容性判定及替换方法 597
9.2.6 迈拓3.5英寸硬盘电路板兼容性判定及替换方法 598
9.2.7 富士通2.5英寸硬盘电路板兼容性判定及替换方法 599
9.2.8 三星3.5英寸硬盘电路板兼容性判定及替换方法 600
9.2.9 三星2.5英寸硬盘电路板兼容性判定及替换方法 601
9.2.10 日立3.5英寸硬盘电路板兼容性判定及替换方法 602
9.2.11 日立2.5英寸硬盘电路板兼容性判定及替换方法 602
9.2.12 日立1.8英寸硬盘电路板兼容性判定及替换方法 604
9.2.13 东芝2.5英寸硬盘电路板兼容性判定及替换方法 605
第10章 硬盘磁头组件故障数据恢复方法 608
10.1 硬盘磁头组件故障的恢复思路 608
10.1.1 开盘换磁头所需环境及工具 608
10.1.2 开盘换磁头的操作步骤 610
10.2 希捷硬盘磁头兼容性判定及开盘方法 611
10.2.1 3.5英寸硬盘开盘实例 611
10.2.2 2.5英寸硬盘开盘实例 615
10.3 西部数据硬盘磁头兼容性判定及开盘方法 618
10.3.1 3.5英寸硬盘开盘实例 618
10.3.2 2.5英寸硬盘开盘实例 621
10.4 迈拓硬盘磁头兼容性判定及开盘方法 623
10.5 富士通硬盘磁头兼容性判定及开盘方法 625
10.6 三星硬盘磁头兼容性判定及开盘方法 626
10.6.1 3.5英寸硬盘开盘实例 626
10.6.2 2.5英寸硬盘开盘实例 627
10.7 日立硬盘磁头兼容性判定及开盘方法 629
10.7.1 3.5英寸硬盘开盘实例 629
10.7.2 2.5英寸硬盘开盘实例 631
10.8 东芝硬盘磁头兼容性判定及开盘方法 632
10.9 开盘成功后如何获得数据 634
10.9.1 物理镜像法 634
10.9.2 数据提取法 634
第11章 硬盘主轴电机故障数据恢复方法 635
11.1 主轴电机故障的恢复思路 635
11.1.1 处理主轴电机故障所需环境及工具 635
11.1.2 处理主轴电机故障的操作步骤 636
11.2 希捷3.5英寸硬盘主轴电机故障处理方法 636
11.2.1 主轴电机兼容性判定 636
11.2.2 实例演示 637
11.3 迈拓3.5英寸硬盘主轴电机故障处理方法 640
11.3.1 主轴电机兼容性判定 640
11.3.2 实例演示 641
11.4 东芝2.5英寸硬盘主轴电机故障处理方法 643
11.4.1 主轴电机兼容性判定 643
11.4.2 实例演示 643
第12章 硬盘盘片故障数据恢复方法 646
12.1 盘片扇区故障的检测方法 646
12.2 盘片扇区故障的修复方法 649
12.2.1 重写校验法 649
12.2.2 G-List替换法 650
12.2.3 P-List隐藏法 650
12.3 盘片扇区故障的数据恢复方法 650
12.3.1 物理镜像法与数据提取法的区别与联系 650
12.3.2 用Media Tools Professional做物理镜像 651
12.3.3 用HD Duplicator做物理镜像 655
12.3.4 用PC-3000 UDMA DE做物理镜像 659
12.3.5 用PC-3000 For SCSI做物理镜像 663
12.3.6 用PC-3000 UDMA DE提取数据 667
12.3.7 用PC-3000 UDMA DE分磁头做物理镜像 668
第13章 硬盘固件故障数据恢复方法 673
13.1 现代硬盘的固件结构 673
13.1.1 什么是硬盘的固件 673
13.1.2 硬盘固件的组成及作用 673
13.1.3 硬盘的生产流程 675
13.1.4 硬盘固件故障的表现 675
13.2 硬盘固件修复工具介绍 676
13.2.1 PC-3000 for DOS 676
13.2.2 PC-3000 for Windows 677
13.2.3 PC-3000 UDMA 678
13.2.4 PC-3000 UDMA for SCSI 678
13.3 用PC-3000 UDMA修复迈拓硬盘的固件 679
13.3.1 识别迈拓硬盘的型号 679
13.3.2 迈拓硬盘的固件结构 681
13.3.3 迈拓硬盘A区、B区和C区固件 684
13.3.4 备份固件 685
13.3.5 检测固件 687
13.3.6 修复固件 689
13.4 用PC-3000 UDMA修复希捷硬盘的固件 689
13.4.1 识别希捷硬盘的型号 689
13.4.2 希捷硬盘与PC-3000 UDMA的连接方法 691
13.4.3 希捷硬盘的固件结构 692
13.4.4 希捷硬盘指令详解 693
13.4.5 酷鱼7200.11“固件门”解决方案 694
13.4.6 酷鱼企业级硬盘ES.2“固件门”解决方案 699
第14章 优盘物理故障数据恢复方法 700
14.1 优盘物理故障的表现及分类 700
14.1.1 优盘物理故障的表现 700
14.1.2 优盘物理故障的分类 701
14.2 优盘物理故障的修复 703
14.2.1 补焊 703
14.2.2 替换晶振 703
14.2.3 替换主控芯片 703
14.2.4 替换闪存芯片 704
14.3 用PC-3000 Flash直接提取闪存芯片的数据 705
14.3.1 PC-3000 Flash的工作原理 705
14.3.2 提取闪存芯片的数据 706
第四篇 服务器数据恢复技术揭秘
第15章 服务器的RAID技术揭秘 711
15.1 什么是RAID 711
15.1.1 RAID基础知识 711
15.1.2 RAID能解决什么问题 711
15.1.3 RAID级别简介 712
15.1.4 如何实现RAID 712
15.1.5 RAID专业术语详解 718
15.2 RAID-0技术详解 720
15.2.1 RAID-0数据组织原理 720
15.2.2 RAID-0故障原因分析 720
15.2.3 RAID-0数据恢复思路 721
15.3 RAID-1技术详解 722
15.3.1 RAID-1数据组织原理 722
15.3.2 RAID-1故障原因分析 723
15.3.3 RAID-1数据恢复思路 723
15.4 RAID-10技术详解 724
15.4.1 RAID-10数据组织原理 724
15.4.2 RAID-10故障原因分析 725
15.4.3 RAID-10数据恢复思路 725
15.5 RAID-1E技术详解 726
15.5.1 RAID-1E数据组织原理 726
15.5.2 RAID-1E故障原因分析 727
15.5.3 RAID-1E数据恢复思路 728
15.6 RAID-2、RAID-3、RAID-4技术详解 729
15.6.1 RAID-2数据组织原理 729
15.6.2 RAID-3数据组织原理 729
15.6.3 RAID-4数据组织原理 730
15.7 RAID-5技术详解 731
15.7.1 RAID-5数据组织原理 731
15.7.2 RAID-5的常规左异步结构 732
15.7.3 RAID-5的非常规左异步结构 733
15.7.4 RAID-5的常规左同步结构 733
15.7.5 RAID-5的非常规左同步结构 734
15.7.6 RAID-5的常规右异步结构 735
15.7.7 RAID-5的非常规右异步结构 735
15.7.8 RAID-5的常规右同步结构 736
15.7.9 RAID-5的非常规右同步结构 736
15.7.10 RAID-5故障原因分析 737
15.7.11 RAID-5数据恢复思路 738
15.8 RAID-5E、RAID-5EE技术详解 739
15.8.1 RAID-5E数据组织原理 739
15.8.2 RAID-5EE数据组织原理 740
15.8.3 RAID-5EE故障原因分析 740
15.8.4 RAID-5EE数据恢复思路 741
15.9 HP双循环技术详解 742
15.9.1 HP双循环数据组织原理 742
15.9.2 HP双循环故障原因分析 743
15.9.3 HP双循环数据恢复思路 744
15.10 RAID-6技术详解 744
15.10.1 P+Q双校验RAID-6数据组织原理 744
15.10.2 NetApp双异或RAID-6数据组织原理 746
15.10.3 X-Code编码RAID-6数据组织原理 750
15.10.4 ZZS编码RAID-6数据组织原理 751
15.10.5 Park编码RAID-6数据组织原理 751
15.10.6 RAID-6故障原因分析 752
15.10.7 RAID-6数据恢复思路 753
15.11 JBOD技术详解 754
15.11.1 JBOD数据组织原理 754
15.11.2 JBOD故障原因分析 754
15.11.3 JBOD数据恢复思路 755
第16章 服务器数据恢复前的准备工作 757
16.1 服务器硬盘与数据恢复工作机的连接 757
16.1.1 将RAID中的成员盘去RAID化 757
16.1.2 服务器专用硬盘介绍 759
16.1.3 多块服务器硬盘与工作机的连接方法 759
16.2 RAID成员盘的物理故障检测 762
16.2.1 电路板故障 762
16.2.2 磁头组件故障 762
16.2.3 盘片划伤及缺陷扇区 762
16.2.4 固件出错 762
16.3 RAID成员盘的镜像方法 762
16.3.1 RAID成员盘镜像的必要性 763
16.3.2 RAID成员盘没有坏扇区的镜像方法 763
16.3.3 RAID成员盘有坏扇区的镜像方法 766
16.4 判断RAID数据的新鲜度 766
16.4.1 判断RAID数据新鲜度的必要性及方法 766
16.4.2 挑出不新鲜的RAID成员盘 768
16.5 RAID数据恢复软件介绍 769
16.5.1 WinHex 769
16.5.2 Raid Reconstructor 772
16.5.3 R-studio 775
16.5.4 FileScav 777
16.5.5 UFS Explorer 779
16.5.6 Getway Raid Recovery 781
第17章 Windows系统服务器数据恢复揭秘 783
17.1 Windows系统分区及文件系统知识的应用 783
17.1.1 分区结构在RAID分析中的作用 783
17.1.2 $BOOT文件在RAID分析中的作用 787
17.1.3 $MFT文件在RAID分析中的作用 790
17.1.4 0x10属性在RAID分析中的作用 791
17.1.5 0x30属性在RAID分析中的作用 792
17.1.6 0x80属性在RAID分析中的作用 793
17.2 基于Windows系统的RAID结构判断方法 793
17.2.1 RAID条带大小的判断 793
17.2.2 RAID成员盘的盘序判断 795
17.2.3 RAID校验方向的判断 796
17.2.4 RAID数据同步与异步的判断 798
17.3 Windows系统下各种RAID数据恢复实例分析 799
17.3.1 实例一:RAID-0的实例分析 800
17.3.2 实例二:RAID-1E实例分析 810
17.3.3 实例三:左同步RAID-5实例分析 814
17.3.4 实例四:右同步RAID-5实例分析(每扇区2048字节) 822
17.3.5 实例五:成员盘前部有RAID信息的RAID-5实例分析 844
17.3.6 实例六:成员盘中部有RAID信息的RAID-5实例分析 860
17.3.7 实例七:HP双循环实例分析 874
17.3.8 实例八:HP ADG RAID-6实例分析 878
第18章 Linux系统服务器数据恢复揭秘 885
18.1 Linux系统分区及文件系统知识的应用 885
18.1.1 分区结构在RAID分析中的作用 885
18.1.2 超级块在RAID分析中的作用 887
18.1.3 块组描述符在RAID分析中的作用 889
18.1.4 位图在RAID分析中的作用 890
18.1.5 i-节点在RAID分析中的作用 893
18.1.6 目录项在RAID分析中的作用 895
18.2 基于Linux系统的RAID结构判断方法 895
18.2.1 RAID条带大小的判断 896
18.2.2 RAID成员盘的盘序判断 896
18.2.3 RAID校验方向的判断 896
18.2.4 RAID数据同步与异步的判断 897
18.3 Linux系统下RAID数据恢复实例分析 897
18.3.1 实例一:有热备盘的RAID-5实例分析 897
18.3.2 实例二:右异步RAID-5实例分析 912
第19章 UNIX系统服务器数据恢复揭秘 926
19.1 UNIX系统分区及文件系统知识的应用 926
19.1.1 分区结构在RAID分析中的作用 926
19.1.2 超级块在RAID分析中的作用 927
19.1.3 柱面组描述符在RAID分析中的作用 928
19.1.4 位图在RAID分析中的作用 929
19.1.5 i-节点在RAID分析中的作用 931
19.1.6 目录项在RAID分析中的作用 933
19.2 基于UNIX系统的RAID结构判断方法 934
19.2.1 RAID条带大小的判断 934
19.2.2 RAID成员盘的盘序判断 935
19.2.3 RAID校验方向的判断 935
19.2.4 RAID数据同步与异步的判断 935
19.3 UNIX系统下各种RAID数据恢复实例分析 935
19.3.1 实例一:Sun Solaris系统RAID-5实例分析 935
19.3.2 实例二:Free BSD系统NAS RAID-5实例分析 948
第20章 Apple系统服务器数据恢复揭秘 968
20.1 Apple系统分区及文件系统知识的应用 968
20.1.1 驱动程序描述符在RAID分析中的作用 968
20.1.2 分区结构在RAID分析中的作用 969
20.1.3 卷头在RAID分析中的作用 972
20.1.4 编录文件在RAID分析中的作用 974
20.2 基于Apple系统的RAID结构判断方法 977
20.2.1 RAID条带大小的判断 977
20.2.2 RAID成员盘的盘序判断 977
20.2.3 RAID校验方向的判断 977
20.2.4 RAID数据同步与异步的判断 977
20.3 Apple系统下各种RAID数据恢复实例分析 978
20.3.1 实例一:APM分区RAID-0实例分析 978
20.3.2 实例二:GPT分区RAID-5实例分析 986
参考文献 1005

感悟与笔记

一、什么是数据

名词解释:进行各种统计、计算、科学研究或技术设计等所依据的数值。

数据的应用领域非常广泛,但在这里我们仅针对计算机领域中部分应用来了解。

在计算机科学中,数据是指所有能输入到计算机并被计算机程序处理的符号的介质的总称,是用于输入电子计算机进行处理,具有一定意义的数字、字母、符号和模拟量等的通称。

电子计算机加工处理的对象

早期的计算机主要用于科学计算,故加工的对象主要是表示数值的数字。现代计算机的应用越来越广,能加工处理的对象包括数字、文字、字母、符号、文件、图像等。

二、什么是数据恢复

当存储介质出现损伤或由于人员误操作、操作系统本身故障所造成的数据看不见、无法读取、丢失。工程师通过特殊的手段读取在正常状态下不可见、不可读、无法读的数据。

数据恢复是指通过技术手段,将保存在台式机硬盘、笔记本硬盘、服务器硬盘、存储磁带库、移动硬盘、U盘、数码存储卡、Mp3等等设备上丢失的电子数据进行抢救和恢复的技术。

三、从哪恢复

数据记录设备:数据以某种格式记录在计算机内部或外部存储介质上。

存储介质是指存储数据的载体。比如软盘、光盘、DVD、硬盘、闪存、U盘、CF卡、SD卡、MMC卡、SM卡、记忆棒(Memory Stick)、xD卡等。目前最流行的存储介质是基于闪存(Nand flash)的,比如U盘、CF卡、SD卡、SDHC卡、MMC卡、SM卡、记忆棒、xD卡等。

四、如何恢复

针对不同故障的不同问题具体分析、判断。

数据恢复的故障类型 大体上可分为硬故障和软故障两类。

硬故障是指存储介子的物理硬件发生故障、损坏。

  • 如:硬盘物理故障(数据储存装置--主要是磁盘)
  • 大量坏道(启动困难、经常死机、格式化失败、读写困难);
  • 电路板故障:电路板损坏、芯片烧坏、断针断线。(通电后无任何声音、电路板有明显的烧痕等);
  • 盘体故障:磁头损坏、磁头老化、磁头烧坏(常有一种“咔嚓咔嚓”的磁头撞击声);电机损坏(电机不转,通电后无任何声音);
  • 固件信息丢失、固件损坏等。(CMOS不认盘、“磁盘管理”中无法找到该硬盘);
  • 盘片划伤。

软故障是相对于硬故障而言的,即存储介子物理硬件没有损坏,通过软件即可解决的故障。包括误删除、误格式化、误分区、误GHOST等。

  • 删除
    • 删除操作却简单的很,当我们需要删除一个文件时,系统只是在文件分配表内在该文件前面写一个删除标志,表示该文件已被删除,他所占用的空间已被"释放", 其他文件可以使用他占用的空间。所以,当我们删除文件又想找回他(数据恢复)时,只需用工具将删除标志去掉,数据被恢复回来了。当然,前提是没有新的文件写入,该文件所占用的空间没有被新内容覆盖。
  • 格式化
    • 格式化操作和删除相似,都只操作文件分配表,不过格式化是将所有文件都加上删除标志,或干脆将文件分配表清空,系统将认为硬盘分区上不存在任何内容。格式化操作并没有对数据区做任何操作,目录空了,内容还在,借助数据恢复知识和相应工具,数据仍然能够被恢复回来。
    • 注意:格式化并不是100%能恢复,有的情况磁盘打不开,需要格式化才能打开。如果数据重要,千万别尝试格式化后再恢复,因为格式化本身就是对磁盘写入的过程,只会破坏残留的信息。
  • 低级格式化
    • 就是将空白的磁盘划分出柱面和磁道,再将磁道划分为若干个扇区,每个扇区又划分出标识部分ID、间隔区GAP和数据区DATA等。可见,低级格式化是高级格式化之前的一件工作,它不仅能在DOS环境来完成,也能在xp甚至vista系统下完成。而且低级格式化只能针对一块硬盘而不能支持单独的某一个分区。每块硬盘在出厂时,已由硬盘生产商进行低级格式化,因此通常使用者无需再进行低级格式化操作。
  • 分区
    • 硬盘存放数据的基本单位为扇区,我们可以理解为一本书的一页。当我们装机或买来一个移动硬盘,第一步便是为了方便管理--分区。无论用何种分区工具,都会在硬盘的第一个扇区标注上硬盘的分区数量、每个分区的大小,起始位置等信息,术语称为主引导记录(MBR),也有人称为分区信息表。当主引导记录因为各种原因(硬盘坏道、病毒、误操作等)被破坏后,一些或全部分区自然就会丢失不见了,根据数据信息特征,我们可以重新推算计算分区大小及位置,手工标注到分区信息表,“丢失”的分区回来了。
  • 覆盖
    • 数据恢复工程师常说:“只要数据没有被覆盖,数据就有可能恢复回来”。
    • 因为磁盘的存储特性,当我们不需要硬盘上的数据时,数据并没有被拿走。删除时系统只是在文件上写一个删除标志,格式化和低级格式化也是在磁盘上重新覆盖写一遍以数字0为内容的数据,这就是覆盖。
    • 一个文件被标记上删除标志后,他所占用的空间在有新文件写入时,将有可能被新文件占用覆盖写上新内容。这时删除的文件名虽然还在,但他指向数据区的空间内容已经被覆盖改变,恢复出来的将是错误异常内容。同样文件分配表内有删除标记的文件信息所占用的空间也有可能被新文件名文件信息占用覆盖,文件名也将不存在了。
    • 当将一个分区格式化后,有拷贝上新内容,新数据只是覆盖掉分区前部分空间,去掉新内容占用的空间,该分区剩余空间数据区上无序内容仍然有可能被重新组织,将数据恢复出来。
    • 同理,克隆、一键恢复、系统还原等造成的数据丢失,只要新数据占用空间小于破坏前空间容量,数据恢复工程师就有可能恢复你要的分区和数据。
  • 服务器数据恢复
    • 磁盘阵列中针对不同的应用使用的不同技术,称为RAID 等级。RAID是英文Redundant Array of Inexpensive Disks的缩写,中文简称为廉价磁盘冗余阵列。而每一等级代表一种技术。这个等级并不代表技术的高低,RAID 5并不高于RAID 3。至于要选择那一种RAID 等级的产品,纯视用户的操作环境及应用而定,与等级的高低没有必然的关系。
  • RAID就是一种由多块硬盘构成的冗余阵列。虽然RAID包含多块硬盘,但是在操作系统下是作为一个独立的大型存储设备出现。利用RAID技术于存储系统的好处主要有以下三种:
    1. 通过把多个磁盘组织在一起作为一个逻辑卷提供磁盘跨越功能
    2. 通过把数据分成多个数据块(block)并行写入/读出多个磁盘以提高访问磁盘的速度
    3. 通过镜像或校验操作提供容错能力

最初开发RAID的主要目的是节省成本,当时几块小容量硬盘的价格总和要低于大容量的硬盘。目前来看RAID在节省成本方面的作用并不明显,但是RAID可以充分发挥出多块硬盘的优势,实现远远超出任何一块单独硬盘的速度和吞吐量。除了性能上的提高之外,RAID还可以提供良好的容错能力,在任何一块硬盘出现问题的情况下都可以继续工作,不会受到损坏硬盘的影响。

RAID技术分为几种不同的等级,分别可以提供不同的速度,安全性和性价比。根据实际情况选择适当的RAID级别可以满足用户对存储系统可用性、性能和容量的要求。常用的RAID级别有以下几种:NRAID,JbOD,RAID0,RAID1,RAID0+1,RAID3,RAID5等。目前经常使用的是RAID5和RAID(0+1)。

  • RAID 0(Striped Disk Array without Fault Tolerance)
    • RAID 0是把所有的硬盘并联起来成为一个大的硬盘组。其容量为所有属于这个组的硬盘的总和。所有数据的存取均以并行分割方式进行。由于所有存取的数据均以平衡方式存取到整组硬盘里,存取的速度非常快。越是多硬盘数量的RAID 0阵列其存取的速度就越快。容量效率方面也是所有RAID格式中最高的,达到100%。但RAID 0有一个致命的缺点–就是它跟普通硬盘一样没有一点的冗余能力。一旦有一个硬盘失效时,所有的数据将尽失。没法重组回来!一般来讲,RAID 0只用于一些已有原数据载体的多媒体文件的高速读取环境。如视频点播系统的数据共享部分等。RAID 0只需要两个或以上的硬盘便能组成。
  • RAID 1(Mirroring)
    • RAID 1是硬盘镜像备份操作。由两个硬盘所组成。其中一个是主硬盘而另外一个是镜像硬盘。主硬盘的数据会不停的被镜像到另外一个镜像硬盘上。由于所有主硬盘的数据会不停地镜像到另外一个硬盘上, 故RAID 1具有很高的冗余能力。达到最高的100%。可是正由于这个镜像做法不是以算法操作,故它的容量效率非常的低,只有50%。RAID 1只支持两个硬盘操作。容量非常有限,故一般只用于操作系统中。 
      RAID 0+1(Mirroring and Striping)
    • RAID 0+1即由两组RAID 0的硬盘作RAID 1的镜像容错。虽然RAID 0+1具备有RAID 1的容错能力和RAID 0的容量性能。但RAID 0+1的容量效率还是与RAID 1一样只有50%,故同样地没有被普及使用。
  • RAID 3(Striping with dedicated parity)
    • RAID 3在安全方面以奇偶校验(parity check)做错误校正及检测,只需要一个额外的校检磁盘(parity disk)。奇偶校验值的计算是以各个磁盘的相对应位作XOR的逻辑运算,然后将结果写入奇偶校验磁盘, 任何数据的修改都要做奇偶校验计算。如某一磁盘故障,换上新的磁盘后,整个磁盘阵列(包括奇偶校验磁盘)需重新计算一次,将故障磁盘的数据恢复并写入新磁盘中,如奇偶校验磁盘故障,则重新计算奇偶校验值,以达容错的要求。
  • RAID 5(Striping with distributed parity)
    • RAID 5也是一种具容错能力的RAID 操作方式,但与RAID 3不一样的是RAID 5的容错方式不应用专用容错硬盘,容错信息是平均的分布到所有硬盘上。当阵列中有一个硬盘失效,磁盘阵列可以从其他的几个硬盘的对应数据中算出已掉失的数据。由于我们需要保证失去的信息可以从另外的几个硬盘中算出来,我们就需要在一定容量的基础上多用一个硬盘以保证其他的成员硬盘可以无误地重组失去的数据。其总容量为(N-1)x最低容量硬盘的容量。从容量效率来讲,RAID 5同样地消耗了一个硬盘的容量,当有一个硬盘失效时,失效硬盘的数据可以从其他硬盘的容错信息中重建出来,但如果有两个硬盘同时失效的话,所有数据将尽失。
  • RAID 6
    • 与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块。两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数据的使用。但RAID 6需要分配给奇偶校验信息更大的磁盘空间,相对于RAID 5有更大的“写损失”,因此“写性能”非常差。较差的性能和复杂的实施方式使得RAID 6很少得到实际应用。
Copyright © 2021-2022 知识猫. All Rights Reserved.