CentOS 回收站文件恢复指南
一 图形界面恢复 Nautilus
- 打开 Nautilus 文件管理器,在左侧或菜单进入 已删除文件/废纸篓。
- 选中需要恢复的文件或文件夹,右键选择 还原,系统会将其恢复到原始路径。
- 若使用 GNOME 桌面,回收站内容通常位于用户主目录的 ~/.local/share/Trash/files,必要时可在此目录手动复制回原位置。
二 命令行恢复 trash-cli
- 安装工具(若未安装):
- CentOS/RHEL:sudo yum install trash-cli
- Fedora:sudo dnf install trash-cli
- 常用命令:
- 查看回收站内容:trash-list
- 交互式还原单个文件:trash-restore
- 批量还原:trash-restore -r
- 清空回收站:trash-empty
- 说明:该方式适用于通过图形界面或 trash-cli 删除到“回收站”的文件。
三 已清空回收站或命令行 rm 删除的恢复 extundelete
- 适用前提:文件系统为 ext3/ext4,且删除后尽快操作,避免新写入覆盖数据。
- 基本步骤:
- 停止对目标分区的写入(卸载或切换到只读):例如 umount /dev/sdXY
- 安装工具(以 ext4 为例,安装 e2fsprogs 开发工具):sudo yum install e2fsprogs-devel
- 下载并编译 extundelete(示例版本 0.2.4):
- wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2
- tar -jxvf extundelete-0.2.4.tar.bz2 && cd extundelete-0.2.4
- ./configure --prefix=/usr/local/extundelete && make && sudo make install
- 恢复操作(示例):
- 扫描分区:/usr/local/extundelete/bin/extundelete /dev/sdXY --inode 2
- 恢复单个文件:/usr/local/extundelete/bin/extundelete /dev/sdXY --restore-file /path/to/file
- 恢复全部:/usr/local/extundelete/bin/extundelete /dev/sdXY --restore-all
- 恢复结果默认在当前目录的 RECOVERED_FILES/ 中;完成后可 mount -o remount,rw /dev/sdXY 重新挂载为可写。
- 重要提示:恢复文件时不要写回原分区,以免覆盖待恢复数据。
四 分区损坏或跨文件系统删除的恢复 TestDisk
- 安装:sudo yum install testdisk
- 运行:testdisk,按向导选择磁盘与分区,执行扫描,预览并勾选需要恢复的文件,复制到另一块磁盘/分区,避免写回原盘。
五 成功率与注意事项
- 发现误删后应立即停止对目标分区的一切写入(下载、解压、缓存、日志等),并尽快尝试恢复。
- 尽量将恢复结果保存到不同磁盘/分区,避免覆盖源数据。
- 对 ext4 使用 extundelete 时,越早恢复成功率越高;已被新数据覆盖的区域通常无法恢复。
- 重要数据请建立定期备份(如 rsync、快照或企业级备份方案)。