温馨提示×

Ubuntu Recycle能恢复误删文件吗

小樊
43
2026-01-02 13:29:32
栏目: 智能运维

Ubuntu 回收站能否恢复误删文件

可以恢复的前提

  • 使用的是带图形界面的 Ubuntu(如 GNOME、KDE),删除操作默认只会把文件移到回收站/Trash,并未真正从磁盘删除。此时通过回收站即可恢复。若文件已被“清空回收站”或用命令行执行了 rm,则进入“已删除但未覆盖”的恢复场景,需要借助工具或备份。为提升成功率,删除后应立刻停止对原分区写入(下载、安装、拷贝等)。

从回收站恢复的常用方法

  • 图形界面恢复
    • 打开文件管理器(如 Nautilus、Dolphin),进入左侧或侧栏的回收站/Trash,右键目标文件选择恢复,即可回到原位置。
  • 命令行恢复(回收站 CLI)
    • 安装:sudo apt-get install trash-cli
    • 列出回收站:trash-list
    • 交互式还原:trash-restore(可按序号选择);批量还原:trash-restore -r
    • 清空回收站:trash-empty
  • 手动目录恢复
    • 回收站文件通常位于:~/.local/share/Trash/files(实际删除的文件内容),相关信息在 ~/.local/share/Trash/info(含原路径、删除时间等)。
    • 示例:先定位文件,再复制回原目录
      • cd ~/.local/share/Trash/files
      • cp 文件名 /原/路径/目标/位置/

回收站没有时的恢复思路

  • 立即停止对包含丢失文件的分区写入,避免覆盖已删除的数据块。
  • 使用文件系统级恢复工具(适用于 ext3/ext4 等)
    • extundelete(ext3/ext4):先卸载分区(如 sudo umount /dev/sdXY),再按文件或目录恢复
      • 安装:sudo apt-get install extundelete
      • 恢复单文件:sudo extundelete /dev/sdXY --restore-file /path/to/file
      • 恢复目录:sudo extundelete /dev/sdXY --restore-directory /path/to/dir
      • 恢复结果默认在当前目录的 RECOVERED_FILES
  • 使用 PhotoRec(跨文件系统、按文件类型恢复)
    • 安装:sudo apt-get install testdisk
    • 运行:sudo photorec,选择磁盘/分区与文件类型,指定输出目录进行恢复(注意输出目录不要在原分区)
  • 其他工具与场景
    • TestDisk 更适合分区/引导结构恢复;foremost 可按签名恢复多种格式。
    • 若文件已被覆盖或分区被格式化,成功率会显著下降,此时优先考虑专业数据恢复服务。

预防与注意事项

  • 建立定期备份(如 rsync、tar、Bacula/Amanda 或云备份),这是最稳妥的兜底方案。
  • 谨慎使用 rm -rf;可用 trash-cli 替代 rm,提供“可回退”的删除体验(如 alias rm=trash 的自定义方案)。
  • 双系统/NTFS 分区上,Windows 的回收站通常位于各盘根目录的 $RECYCLE.BIN,Ubuntu 的回收站位于用户目录的 ~/.local/share/Trash;两者互不干扰,清理时请区分来源。

0