Ubuntu回收站能恢复已格式化分区文件吗
小樊
40
2025-11-26 06:32:09
Ubuntu回收站与已格式化分区的恢复能力
核心结论
- 不能。对已执行格式化的分区,桌面回收站(如 Nautilus/Dolphin 的 Trash)不会保留任何内容,因为格式化通常会重建文件系统结构并清空回收站目录。回收站仅对“在图形界面中删除到回收站”的文件有效;即便如此,回收站本身也不是为跨分区或跨文件系统的恢复机制设计的。
原因说明
- 回收站本质是位于用户主目录下的隐藏目录(如:~/.local/share/Trash/),删除动作只是把文件移动到该目录;它依赖于原分区的文件系统与目录结构存在。
- 执行快速格式化会重建超级块/索引结构并清空目录项,回收站元数据随之消失;完全格式化/低级格式化还会覆盖更多原始数据块,进一步降低可恢复性。
可行的恢复路径
- 立刻停止对目标磁盘/分区的写入(下载、安装、拷贝等),尽量将恢复操作指向另一块磁盘,避免覆盖源数据。
- 判断文件系统并选择合适工具(示例命令均在另一块磁盘或 LiveCD 环境中执行):
- ext3/ext4:使用 extundelete
- 安装:
sudo apt install extundelete
- 恢复单文件:
sudo extundelete /dev/sdXY --restore-file home/user/file.txt
- 恢复目录:
sudo extundelete /dev/sdXY --restore-directory home/user/docs
- 恢复全部:
sudo extundelete /dev/sdXY --restore-all
- NTFS/FAT/exFAT 或不确定文件系统:使用 TestDisk/PhotoRec
- 安装:
sudo apt install testdisk
- 分区与结构修复:运行
sudo testdisk,选择磁盘 → Analyse → QuickSearch/DeepSearch → 按 P 列出文件 → 用 C 复制到安全位置
- 文件级恢复:运行
sudo photorec /dev/sdXY,选择分区与文件系统,指定输出目录进行扫描恢复
- 恢复文件请保存到与源分区不同的磁盘,避免二次覆盖。
成功率与注意事项
- 成功率取决于格式化类型与后续写入量:刚格式化且未写入时成功率较高;完全格式化/大量写入后显著降低。
- 终端使用 rm 删除的文件不会进入回收站;图形界面删除的文件才可能在回收站中。
- 重要数据建议后续采用 rsync 或定时任务进行定期备份,降低损失风险。