FileFix Ultimate
简体中文

对错误的磁盘执行 diskpart clean 后如何恢复文件

即使对错误的磁盘执行了 diskpart clean,文件往往还在。clean 命令只清除分区表以及磁盘开头和结尾的一小块区域,中间的分区不受影响。例外是 clean all,它会向每个扇区写零。在做任何事之前,先确认执行的是哪一个。

最后更新:

现在该怎么做

  1. 不要初始化磁盘、不要新建分区,也不要再对它运行任何 diskpart 命令。
  2. 确认执行的是几秒钟就结束的 clean,还是要跑好几个小时的 clean all。
  3. 以只读方式在整块物理磁盘上搜索丢失的分区,并把文件保存到另一块磁盘。

操作步骤

  1. 停下来,保持磁盘原样

    用 exit 退出 diskpart。打开磁盘管理时,这块磁盘通常显示为未知、没有初始化,并弹出初始化提示。请取消这个对话框。初始化会写入新的分区表,之后再新建分区还会写入新的文件系统。

  2. 在命令窗口中向上翻看

    如果窗口还开着,list disk 的输出里有每块磁盘的编号和容量。由此可以知道实际选中的是哪块磁盘、容量多大,之后辨认正确分区时很有帮助。同时记下它是固态硬盘还是机械硬盘。

  3. 判断是 clean 还是 clean all

    两者结束时都显示同一句清除磁盘成功的提示。clean 几乎瞬间完成;clean all 要覆盖每个扇区,在大容量机械硬盘上往往要几个小时。如果它已跑完,数据就没有了;如果中途停止,只有已经覆盖到的区域丢失。

  4. 以管理员身份运行 FileFix Ultimate

    从 U 盘或另一块驱动器运行便携版,确保不向被清除的磁盘写入任何内容。读取没有分区的磁盘需要管理员权限。

  5. 在物理磁盘上搜索分区

    在已删除文件恢复中,把被清除的磁盘作为整块物理磁盘选中。程序会寻找 NTFS、FAT32、exFAT 等引导扇区以及每个分区末尾的 NTFS 备份引导扇区,然后列出找到的分区及其起始位置、大小和文件系统。

  6. 扫描正确的候选

    挑选与您记忆中的磁盘布局和容量相符的候选,分别运行均衡扫描。如果一个分区都没找到,就对整块磁盘运行深度签名扫描,文件会以无名形式回来,但内容可能完整。

  7. 全部保存到另一块磁盘

    恢复到另一块物理磁盘,并在重新分区或重新使用被清除的磁盘之前检查结果。

clean 与 clean all 的区别

根据 Microsoft 的文档,clean 会从所选磁盘上删除所有分区和卷格式信息。在 MBR 磁盘上,它覆盖 MBR 分区信息和隐藏扇区;在 GPT 磁盘上,它覆盖包括保护性 MBR 在内的 GPT 分区信息。实际中它通常只把磁盘开头和结尾约 1MB 写零,在 GPT 磁盘上也会顺带清掉末尾的备份分区表。

Windows 通常从 1MB 处开始第一个分区,所以各分区的引导扇区及其后面的数据一般都没被动过。这就是为什么丢失分区搜索往往能把所有分区都找回来。clean all 则是另一个命令:它向磁盘的每个扇区写零。一旦执行完毕,任何软件或数据恢复机构都无法找回数据。

为什么会选错磁盘

常见的情形是正在准备 U 盘或新硬盘。list disk 列出磁盘 0、1、2,容量看起来差不多,select disk 时选错了编号。重启或插拔设备后磁盘编号可能变化,之前记下的编号现在可能指向另一块磁盘。

Windows 会拒绝清除当前正在运行的系统盘,所以如果电脑还能正常启动,被清除的就不是系统盘。风险更高的是 Windows 安装程序里的命令提示符,那时内置磁盘没有被占用,可以毫无提示地被清除。

固态硬盘为何不同

在固态硬盘上,clean 可能导致 Windows 对整块磁盘发送 TRIM。随后硬盘可能在内部擦除所有块,扫描只能看到零。是否会这样取决于硬盘型号、连接方式和 Windows 版本,所以仍值得扫描。FileFix Ultimate 会把只含零的结果标为很可能无法恢复,而不是保存成空文件。

无法恢复的情况

  • clean all 已执行完毕,每个扇区都被零覆盖。
  • 磁盘是固态硬盘,clean 之后 TRIM 擦除了整块盘。
  • 磁盘已被初始化、重新分区、格式化,并复制了新数据。
  • 被清除的磁盘上已安装了 Windows 或其他系统。
  • 分区是 ReFS、APFS,或属于 RAID 6、RAID 10 阵列,这些不在分析范围内。

FileFix Ultimate 能做什么

  • 以只读方式读取被清除的磁盘,绝不写入分区表、引导扇区或其他任何内容。
  • 借助备份引导扇区,在整块物理磁盘上查找丢失的 NTFS、FAT32、exFAT、ext4 和 HFS+ 分区。
  • 没有剩余分区结构时,改用支持 68 种文件签名的深度签名扫描。
  • 磁盘有读取错误时可以先创建驱动器映像,再扫描映像。
  • 个人使用免费,没有恢复量限制,可从 U 盘便携运行。

FileFix Ultimate 个人使用免费、可离线使用,并且不会向你正在恢复的驱动器写入数据。工作或商业用途需为每台电脑购买一年期许可。运行前请检查签名。

常见问题

diskpart clean 有撤销命令吗?

没有。diskpart 不提供撤销。通过搜索磁盘往往能重新找到分区并把文件复制出来,但在 diskpart 内部无法撤回这个命令。

提示说 DiskPart 成功地清除了磁盘,是不是数据全没了?

不一定。clean 和 clean all 显示的是同一句话。关键在于花了多长时间。一两秒就结束的命令清掉的是分区表,而不是数据。

能不能直接恢复旧分区表,而不是复制文件?

分区修复工具可以根据找到的分区重写分区表,但一旦猜错就可能造成新的损坏。先把重要文件复制到另一块磁盘,之后再尝试恢复分区表就几乎没有风险。

clean all 运行几分钟后我就停止了,还剩下什么?

clean all 从磁盘开头往后写,所以第一个分区及其文件系统记录所在的前部很可能已被写零。更靠后的数据可能还在,通常可以用深度签名扫描找到,但一般没有文件名。

分享此页面