Ubuntu Recycle bin误删文件能找回吗
小樊
43
2025-12-10 00:29:32
能否找回与适用场景
- 可以。若只是通过文件管理器(如 Nautilus、Dolphin)的普通删除进入回收站,文件通常保存在用户目录的回收站中,可直接还原到原位置。若执行了Shift+Delete或命令行 rm,文件不会进入回收站,需要使用工具或备份恢复。回收站机制与文件管理器绑定,不同桌面环境(如 GNOME、KDE)位置与入口略有差异。
从回收站直接还原
- 图形界面
- 打开回收站(桌面图标或文件管理器侧栏),右键目标文件选择还原,文件将回到删除前的目录。
- 命令行 trash-cli
- 安装:sudo apt-get install trash-cli
- 列出回收站:trash-list
- 交互式还原:trash-restore(可按文件名选择;支持批量交互还原)
- 批量还原:trash-restore -r
- 清空回收站:trash-empty
- 命令行 gvfs-trash
- 列出:gvfs-trash --list
- 还原:gvfs-trash --restore(交互式)
- 批量还原:gvfs-trash --restore-all
- 手动目录恢复
- 回收站实际路径:~/.local/share/Trash/
- files/:存放被删除的文件
- info/:记录原始路径与删除时间
- 示例:进入回收站目录后复制回原位置
- cd ~/.local/share/Trash/files
- cp 目标文件 ~/目标目录/
- 提示:若原目录已存在同名文件,恢复时会被覆盖,建议先检查或改写到其他目录再移动。
回收站已被清空或使用了 rm 的恢复
- 立即停止在该磁盘写入新数据(下载、解压、缓存、安装等),并尽量将恢复操作指向其他分区/外置盘,避免覆盖被删除数据块。
- 确认文件所在分区
- 查看分区占用:df -h
- 确认设备名(如:/dev/sda1)
- 工具选择与要点
- extundelete(适用于 ext3/ext4)
- 安装:sudo apt-get install extundelete
- 恢复指定文件:sudo extundelete /dev/sda1 --restore-file /path/to/deleted_file
- 恢复全部可恢复文件:sudo extundelete /dev/sda1 --restore-all
- 恢复结果默认在当前目录生成 RECOVERED_FILES 文件夹
- TestDisk / PhotoRec(跨文件系统、按文件类型恢复)
- 安装:sudo apt-get install testdisk
- 分区/结构修复用 testdisk;按类型文件恢复用 photorec
- 选择目标磁盘与分区,按向导执行,恢复文件到其他分区/外置盘
- 成功率取决于删除后的磁盘写入与文件系统状态,越早操作成功率越高。
预防与后续建议
- 建立规律备份:如 Déjà Dup、rsync、tar 或云备份;重要资料多副本离线保存。
- 使用回收站管理工具(如 trash-cli)统一查看、还原与清空,减少误删风险。
- 避免在疑似故障或异常关机后继续写入;对关键数据,删除后第一时间停止写入并着手恢复。