Linux回收站中文件若已被覆盖,恢复难度较大,可尝试以下方法(成功率取决于覆盖程度,建议立即停止写入新数据):
trash-restore(需先安装trash-cli):trash-restore <文件名或路径>(恢复单个文件)trash-restore -r(恢复所有文件)。sudo apt install extundelete(Debian/Ubuntu)或sudo yum install extundelete(CentOS/RHEL)。sudo extundelete /dev/sdXN --restore-file /路径/文件名(/dev/sdXN为文件所在分区,需替换为实际分区名)。sudo extundelete /dev/sdXN --restore-all(结果保存在RECOVERED_FILES目录)。sudo apt install testdisk。photorec,选择磁盘和分区后,按文件类型扫描恢复(文件名可能丢失)。lsof | grep deleted查找被删除但仍被进程占用的文件。/proc/<PID>/fd/<FD>路径复制文件回原位置(需知道进程ID和文件描述符)。trash-cli替代rm命令,从源头避免误删风险。提示:Linux删除文件后是否可恢复取决于是否被覆盖,而非是否进入“回收站”。定期备份是避免数据丢失的最佳方案。