source:http://www.cgsecurity.org/wiki/TestDisk_CN
TestDisk 是一款开源软件,受GNU General Public License (GPL v2+)条款保护.
TestDisk:http://www.cgsecurity.org/wiki/TestDisk_CN
TestDisk 是一款强大 的免费数据恢复软件! 早期主要是设计用来在使用有缺陷的软件,病毒或人为误操作(如不小心删除分区表)导致的分区丢失后,帮助用户恢复丢失分区,或修复不能启动的磁盘。 用Testdisk来恢复分区表非常简单。
TestDisk支持以下功能:
修复分区表, 恢复已删除分区
用FAT32备份表恢复启动扇区
重建FAT12/FAT16/FAT32启动扇区
修复FAT表
重建NTFS启动扇区
用备份表恢复NTFS启动扇区
用MFT镜像表(MFT Mirror)修复MFT表
查找ext2/ext3/ext4备份的SuperBlock
从FAT,NTFS及ext2文件系统恢复删除文件
从已删除的FAT,NTFS及ext2/ext3/ext4分区复制文件.
恢复范例:http://www.cgsecurity.org/wiki/Testdisk_%E6%93%8D%E4%BD%9C%E6%8C%87%E5%8D%97
这个 恢复范例 将引导你一步一步地用TestDisk来恢复丢失的分区和修复一个毁坏的分区。阅读了这个指南之后,你就可以恢复自己的数据了。我们很欢迎本TestDisk手册 的其他语言翻译版本。
Contents
[hide]
1 问题举例
2 症状
3 运行 TestDisk 程序
4 新建日志
5 选择磁盘
6 选择分区表类型
7 当前的分区表状态
8 快速搜索分区
9 保存分区表 还是要 寻找更多分区?
10 有一个分区仍然找不到: 深度搜索
11 恢复分区表
12 NTFS Boot扇区恢复
13 恢复删除的文件
问题举例
我们有一个容量 36GB 的硬盘,包含着3个分区。 但是很不幸地;
NTFS主分区的boot扇区损坏
一个逻辑 NTFS 分区被意外删除
本 恢复范例 引导你一步一步地用TestDisk通过以下途径,恢复这些 '丢失的' 分区:
重写毁坏的NTFS boot扇区
恢复意外删除的逻辑NTFS分区
我们可以一模一样地照着下面的步骤完成对FAT32分区的恢复(不是NTFS)。 这里也有其他的 恢复范例。对于有关 FAT12, FAT16, ext2/ext3, HFS+, ReiserFS 和其他分区类型的信息,请参阅 运行 TestDisk 程序.
唯一需要的条件:
TestDisk 需要用管理员权限来运行。
使用 TestDisk 的重点:
用
方向键
和上一页/下一页
按键在TestDisk 中导航。然后, 按
Enter
键确认你的选择.若要返回前一页或者退出TestDisk, 按 q (Quit) 键。
若要在 TestDisk 下保存修改,按
y
(Yes) 或者Enter
键来确认如果确实要把分区信息写入主引导记录(MBR),应该选择 "Write" 选项并按
Enter
键。
症状
如果硬盘的主分区容纳着一个操作系统,那么由于毁坏的boot扇区,这个操作系统很可能不再能启动。如果这个硬盘是第二(数据)驱动器,你可以把它接到另一台计算机上(通常接到CD/DVD的接口),然后下面的症状就会被观察到:
Windows 资源管理器 或 磁盘管理器 把第一个主分区显示为 raw (没有格式化) 并且 Windows 提示:
The drive is not formatted, do you want to format it now?(该驱动器没有格式化,现在格式化它吗?)
[ 不应该 在不知道为什么的情况下格式化它!]一个逻辑卷不见了。 在 Windows 资源管理器中, 这个逻辑卷不再可用。 Windows 磁盘管理器(Disk Management Console) 仅仅在这个逻辑卷的位置显示 "未分配的空间" 。
运行 TestDisk 程序
如果 TestDisk 还没有被安装, 可以从这里下载 TestDisk Download。然后解压缩这个归档文件,包括子文件夹。
若要从 硬盘,U盘,智能卡等设备中恢复丢失的分区 或者 修复文件系统,你需要足够的权限来访问这个物理设备。
在 DOS 下, 执行 TestDisk.exe
在 Windows 下, 从一个处于管理员组的账户打开 TestDisk (ie
testdisk-6.13/testdisk_win.exe
) . 在 Vista 下, 右击 testdisk_win.exe 然后 "以管理员身份运行" TestDisk.在 Unix/Linux/BSD 下, 需要用 root 账户来运行 TestDisk (ie.
sudo testdisk-6.13/testdisk_static
)在 MacOSX 下, 不过你不是 root, TestDisk (ie
testdisk-6.13/testdisk
) 将会在你的确认之后以sudo重新运行。在 OS/2下, TestDisk 不能处理物理设备,只能处理磁盘镜像.很抱歉.
若要从一个媒体镜像中恢复分区或者修复一个文件系统镜像,执行
testdisk image.dd
在一个raw磁盘镜像中进行处理testdisk image.E01
从一个 Encase EWF 镜像中恢复文件testdisk 'image.???'
如果 Encase 镜像被分割成若干文件
若要修复一个 TestDisk没有列出来的文件系统, 执行 testdisk device
, 也就是说,
testdisk /dev/mapper/truecrypt0
或者testdisk /dev/loop0
从一个 TrueCrypt 加密分区中 修复 NTFS or FAT32 boot 扇区文件. 同样的方法对于使用 cryptsetup/dm-crypt/LUKS 加密的分区也管用.testdisk /dev/md0
to repair a filesystem on top of a Linux RAID device.
新建日志
选择 Create 来让 Testdisk 新建一个日志文件( log file) ,里边包含了一些技术信息和消息, 除非你要往一个日志里追加信息 log 或者 你从只读存储器里执行 TestDisk 而且必须在别的地方建立日志 log。
选择 None 如果你不想让过程中的细节和消息记录到日志文件里 log file (比如当 Testdisk 是在只读位置执行的时候,这很有用).
按 Enter 键以继续.
选择磁盘
所有的硬盘都应该能被TestDisk检测到并且辅以正确的大小列出来:
用 上/下 键 来选择丢失分区的硬盘。
按 Enter 键继续。
If available, use raw device /dev/rdisk*
instead of /dev/disk*
for faster data transfer.
选择分区表类型
TestDisk 会显示分区表类型。
选择正确的分区表类型 - 在 TestDisk 自动检测分区表类型之后,一般预设的那个值是正确的。
按 Enter 键继续。
当前的分区表状态
TestDisk 显示这个菜单的时候 (参见 TestDisk Menu Items).
用预设的“analyze”(分析)选项来检查当前的分区结构并搜索丢失的分区。
分析过程中按 Enter 键继续。
然后,当前的结构就会被列出来。 接下来就可以在当前的分区结构中检查丢失或错误的分区了。
第一个分区显示了两次,它指向了一个毁坏的分区或一个无效的分区表入口。
无效的 NTFS boot 指向了一个错误的 NTFS boot 扇区, 所以这是一个损坏的文件系统。
在扩展分区中,只有一个逻辑分区(分区标签为2)可用。 有一个逻辑分区不见了。
选 Quick Search (快速搜索)来继续。
快速搜索分区
TestDisk displays the first results in real time. | (click on thumb to display the image). |
在 Quick Search(快速搜索)的过程中, TestDisk 找到了两个分区,包括那个不见的逻辑分区(标签为Partition 3
)。
高亮这个分区并按 p 来列出文件 (若要返回前一页,请按 q ).
这里所有的目录和文件都正确列出来了。
按 Enter 键继续。
保存分区表 还是要 寻找更多分区?
当全部分区都可用的时候 并且数据已正确列出,应该选 Write 菜单项保存分区结构. 菜单项
Extd Part
gives you the opportunity to decide if the extended partition will use all available disk space or only the required (minimal) space.当一个分区,第一个,仍然找不到, 高亮菜单项 深度搜索 (没有自动进行的时候) ,按 Enter 键继续.
有一个分区仍然找不到: 深度搜索
Deeper Search 深度搜索也会找寻 FAT32的备份boot扇区 以及 NTFS backup boot superblock, ext2/ext3 backup superblock 来查找更多的分区,
它将会扫描每一个柱面。 | (click on thumb). |
深度搜索之后,结果会像下面这样显示出来:
第一个分区 "Partition 1" 被用 backup boot扇区 找到了。 屏幕上的最后一栏写着, "NTFS found using backup sector!" 还有分区尺寸。 分区2 "partition 2" 被显示了两次,而且大小不同。
显示为 D(eleted) 的分区将不会被恢复 如果您让它们这样显示出来。 两个状态为 D 的分区将会被删除,因为他们互相重叠了。您应该进行识别,以决定到底恢复哪一个分区。
高亮第一个
Partition 2
然后按 p 来列出其包含的数据。
The file system of the upper logical partition (label Partition 2) is damaged | (click on thumb). |
按 q 来返回前一页。
让这个文件系统损坏的分区
Partition 2
标记上D(deleted)
.高亮下边的第二个分区
Partition 2
按 p 来显示内容。
它起作用了,您的文件均被列出,您找到了正确的分区!
Use the left/right arrow to navigate into your folders and watch your files for more verification
Note: FAT directory listing is limited to 10 clusters - 一些文件可能没有出现 但这并不影响恢复。
Press q for Quit to go back to the previous display.
The available status are Primary, * bootable, Logical and Deleted.
Using the left/right arrow keys, change the status of the selected partition from D(eleted)
to L(ogical)
. This way you will be able to recover this partition.
set partition to recover |
Hint: read How to recognize primary and logical partitions?
Note: If a partition is listed *(bootable) but if you don't boot from this partition, you can change it to Primary partition.
按 Enter 键继续。
恢复分区表
现在已经可以写入新的分区结构了。
注意: 扩展分区是自动设置的。 TestDisk 是用不同的分区结构来辨认它们的。
如果 所有分区都被列出 ,当且仅当在这种情况下, 在 Write 处按 Enter 键, y 键和 OK.
至此, 这些分区就注册在了分区表里。
NTFS Boot扇区恢复
第一个分区的boot扇区(Partition 1
)还是处于损坏状态。是时候该修复它了。 NTFS boot扇区的状态很糟糕,然而备份的boot扇区正常可用。 两个Boot扇区并不是完全一样的。
选择Backup BS来拷贝备份的扇区覆盖到目标位置,按Enter确认, use
y
to confirm and next OK.
更多有关于在TestDisk菜单下修复Boot扇区的信息 . 如下的信息会被显示:
现在boot扇区和它的备份扇区都状态良好并且保持一致:NTFS boot扇区已经成功地恢复了!
按 Enter 退出.
TestDisk 显示 You have to restart your Computer to access your data(您需要重新启动您的计算机以使修改生效),所以按
Enter
最后一次然后重新启动计算机吧。
恢复删除的文件
TestDisk 可以恢复
FAT12, FAT16 和 FAT32 文件系统中的文件和目录,
ext2 文件系统中的文件,
NTFS 分区中的文件 自从 6.11版本.
如果这不管用,或者对于其他文件系统,请尝试 PhotoRec,一个基于模式匹配的文件恢复工具。
返回 TestDisk 主页