温馨提示×

Linux recycle中的文件怎么还原

小樊
33
2025-11-23 15:15:58
栏目: 智能运维

Linux 回收站文件还原指南

一 前置说明

  • Linux 没有统一的系统级回收站,回收站通常由桌面环境提供。常见位置为:~/.local/share/Trash/,其中包含两个子目录:files(存放被删除的文件)和 info(记录原路径与删除时间)。若使用命令行删除(如 rm),文件通常不会进入该目录。还原时同名文件可能被覆盖,操作前请确认目标位置安全。

二 方法一 使用命令行工具 trash-cli(推荐)

  • 安装(若未安装):
    • Debian/Ubuntu:sudo apt-get install trash-cli
    • CentOS/RHEL:sudo yum install trash-cli
    • Fedora:sudo dnf install trash-cli
  • 常用命令:
    • 列出回收站:trash-list
    • 交互式还原:trash-restore(按提示选择条目)
    • 批量还原:trash-restore -r
    • 清空回收站:trash-empty
  • 适用场景:服务器或没有图形界面时,仍能可靠地按条目还原到原路径。

三 方法二 使用 gvfs-trash(GNOME 等环境)

  • 列出回收站:gvfs-trash --list
  • 还原指定文件:gvfs-trash --restore /path/to/file
  • 批量还原:gvfs-trash --restore-all
  • 说明:该工具与 GNOME 虚拟文件系统(GVFS)集成,适合在桌面会话中按原路径恢复。

四 方法三 图形界面文件管理器

  • GNOME Nautilus:侧栏打开回收站,右键目标文件选择恢复
  • KDE Dolphin:侧栏打开回收站,右键目标文件选择恢复
  • 其他桌面(如 XFCE、LXDE)通常也提供类似回收站管理入口,可在文件管理器文档中查找对应操作。

五 方法四 回收站已被清空或文件被 rm 删除时的补救

  • 立即停止对涉及磁盘的写入(下载、解压、缓存、日志等),以降低被覆盖风险。
  • 有备份时优先从备份恢复(如 rsync、BorgBackup、Timeshift 等)。
  • 尝试从回收站目录手动找回(适用于未清空但信息可能残留的情况):
    • 进入回收站文件目录:cd ~/.local/share/Trash/files
    • 查找并复制回原位置(示例):find . -name “文件名” -exec cp {} /原路径/ ;
  • 使用专业恢复工具(针对已清空或 rm 删除):
    • extundelete(仅限 ext3/ext4):如 extundelete /dev/sdXY --restore-file /path/to/file
    • TestDisk / PhotoRec:面向多文件系统和多种文件类型的通用恢复
    • lsof | grep deleted:若文件仍被进程占用,可尝试从进程句柄恢复
  • 重要数据建议尽快寻求专业数据恢复服务;恢复成功率取决于是否发生数据覆盖与磁盘后续写入量。

0