在 CentOS 里,如果你说的是 “删除的文件如何恢复”(很多人会叫 recycle / 回收站),需要先明确几个前提,否则恢复成功率会很低。下面按最常见场景来说明。
恢复是否可行,取决于:
文件是怎么删的?
rm -rf(命令行直接删除)✅ 有可能恢复删除后是否继续写入数据?
文件系统类型
ext4 ✅ 可恢复xfs ⚠️ 恢复难度大(不推荐指望)rm 不会进回收站~/.local/share/Trash
cd ~/.local/share/Trash
ls
files:被删除的文件info:删除信息可以直接复制回来:
cp -a files/文件名 目标路径
假设删除的是 /home:
umount /home
如果无法卸载:
mount -o remount,ro /home
yum install e2fsprogs-devel gcc -y
下载并编译:
wget http://extundelete.sourceforge.net/extundelete-0.2.4.tar.bz2
tar xjf extundelete-0.2.4.tar.bz2
cd extundelete-0.2.4
./configure
make
make install
extundelete /dev/sdaX --restore-all
或指定目录:
extundelete /dev/sdaX --restore-directory /home/user
恢复后的文件在:
RECOVERED_FILES/
XFS 没有成熟的 undelete 工具,官方不支持恢复。
可尝试(成功率低):
xfs_undelete(社区工具)✅ 唯一可行方案:
testdiskphotorec| 情况 | 能否恢复 |
|---|---|
rm -rf + ext4 + 未写入 |
✅ 高 |
| 桌面删除 | ✅ 简单 |
| xfs | ⚠️ 很难 |
| 删除后继续写数据 | ❌ 很低 |
| 重装系统 | ❌ 基本不行 |
如果你愿意,可以直接告诉我:
df -T 输出)我可以给你精确到命令级别的恢复方案。