
TestDisk PhotoRec 数据恢复实战免费重建分区表 找回误删文件【免费下载链接】testdiskTestDisk PhotoRec项目地址: https://gitcode.com/gh_mirrors/te/testdiskTestDisk 负责修复损坏的分区表PhotoRec 做文件级数据恢复两者免费开源、互相配合。照本文操作一遍你能独立修复一块丢失分区的磁盘并把误删的照片从扇区里扫回来。 先立三条保命规矩停写入每多一次写入原始数据被覆盖的概率就高一分。换盘存恢复到本盘会直接覆盖你还没救出来的数据。留日志出问题时有据可查报问题时也能附上过程记录。30 秒诊断你的数据现在处于哪种状态先对号入座再决定动哪个工具症状判断对应工具文件/文件夹消失了分区还在、还能进索引被删扇区里的原始数据通常还在PhotoRec磁盘显示未初始化分区整体消失分区表损坏容器结构丢了TestDisk装双系统后引导失败进不了原有系统引导扇区或分区结构被改动TestDisk读取极慢、固定位置卡住、SMART 报坏道盘体有坏块反复读盘会加速恶化先ddrescue做镜像再选上面任一一句话决策结构坏了找 TestDisk内容丢了找 PhotoRec两者可组合。原理速览为什么删了还能找回坏了还能修把磁盘想象成图书馆分区表是书架旁的目录卡。目录卡烧了分区表损坏书还在架上——TestDisk 的工作是把目录重新排对重新定位每个书架分区的起止位置并写回。PhotoRec 干脆不看目录卡而是沿书架逐本核对书脊上的 ISBN按文件头签名把书一本本捡出来这就是 file carving。代价是书脊上没有登记处信息恢复出的文件按类型丢进recup_dir.d这类子目录原始文件名和目录结构没了需要自己重新整理。所以组合路径是先用 TestDisk 修复结构分区能挂载时大部分数据直接回来仍然拿不到的部分再交给 PhotoRec 做文件级扫描。跟着走一遍安装 第一次恢复发行版直接装现成包两个命令testdisk和photorec一起装上# Ubuntu / Debian sudo apt-get install testdisk# Arch Linux sudo pacman -S testdisk# macOS brew install testdisk需要最新功能时从源码编译git clone https://gitcode.com/gh_mirrors/te/testdisk ./autogen.sh ./configure make sudo make install线路 A重建丢失的分区表TestDisk先lsblk或fdisk -l确认设备名别选错盘。然后sudo testdisk /log /dev/sdb/log生成日志文件。界面关键步骤选[Create]建立日志分区表类型选Intel新系统/苹果选GPT按Analyse进入分析再选Quick Search找到分区后核对起止位置与容量是否合理用P标记为 Primary按Write写回分区表重启验证。线路 B从扇区里捞文件PhotoRecsudo photorec /log /d /data/recovery /dev/sdb1/d指定恢复文件的保存目录必须指向另一块物理盘——这是最容易翻车的参数写之前用df -h复核一遍。界面关键步骤选择要扫描的分区或整盘文件系统类型不确定就选Other确认保存位置在别的磁盘按Search开始扫描CtrlC 可中途停止结束后到recup_dir.d等子目录按类型找文件。参数速查 提速技巧参数适用工具作用/log两个都有生成日志文件出问题必开/logname 文件名两个都有指定日志文件名/debug两个都有输出调试信息报问题时附上/d 目录PhotoRec指定恢复文件保存目录/all两个都有跳过交互提示按默认值执行/listTestDisk列出系统识别到的所有磁盘/cmd两个都有命令行模式适合写脚本提速与排错只扫分区不扫整盘交互界面里可以限定扫描范围Quick Search比全盘扫描快得多范围越精确越快。坏道盘先镜像再干活ddrescue /dev/sda /data/sda.img /data/sda.log坏块会被跳过并记录进度可中断续跑之后所有操作对着.img做原盘不再受任何写操作影响。日志常开/log几乎没有额外开销但报问题时能完整交代扫描过程省掉一半猜谜时间。 翻车现场自救进度条卡在某个百分比不动原因扫描区域有坏道或正在识别一个大文件。对策先smartctl -a /dev/sda查盘体状态需安装 smartmontools有坏块就转 ddrescue 镜像流程确认盘是健康的就耐心等或 CtrlC 停掉改扫分区。恢复出来的文件打不开、内容残缺原因原始数据已被新写入覆盖或文件在盘上是碎片化存储、签名切割拼不完整。对策发现丢失后第一时间操作用df -h确认恢复目录在别的盘恢复出的关键文件先逐个打开验证能用的先归档。SSD 上删了的数据找不回原因TRIM 会在删除后很快清零物理块和机械盘数据还在、只是索引没了是两回事。对策误删后立即停止对 SSD 的一切写入cat /sys/block/sda/queue/discard_max_bytes非零说明 TRIM 生效若触发过 TRIM多数情况只能靠备份。操作之后盘更糟了原因最常见的错误是把恢复目录放到了被恢复的盘上扫描写入直接覆盖原始数据。对策立刻df -h看目标目录挂在哪块物理盘恢复目录必须独占另一块盘没有空盘就先ddrescue整盘备份。想改源码看这里简写src/目录的命名规律很直白partgpt.c、parti386.c、partmac.c等part*.c各管一种分区表格式file_*.c每个文件对应一种文件类型的签名识别diskacc.c是磁盘访问层filegen.c是统一识别引擎。添加新格式三步新建src/file_xxx.c实现文件头/尾检查函数 → 在filegen.c注册 → 加入src/Makefile.am编译列表。细节以项目最新文档为准。行动备忘停止对丢失磁盘的一切写入能断电就断电用lsblk确认设备名判断是分区结构还是文件内容的问题坏道盘先ddrescue做镜像后续全部在镜像上操作写盘前用df -h复核恢复目录在另一块物理磁盘每次运行都带/log保留日志恢复完成先抽查关键文件能否正常打开再整体归档定期备份 季度导出一次分区表——备份永远排在任何恢复工具之前【免费下载链接】testdiskTestDisk PhotoRec项目地址: https://gitcode.com/gh_mirrors/te/testdisk创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考