在 Unix / Linux 系统中,恢复误删文件的可能性取决于文件系统类型、删除方式以及是否继续写入数据。下面按常见情况给你一个实用指南。
umount /mnt/your_partition
或设为只读:mount -o remount,ro /mnt/your_partition
rm 删除(最常见)Unix 中 rm 一般不会进回收站,而是直接释放 inode。
如果你删除的是一个正在被程序使用的文件:
lsof | grep deleted
找到类似:
java 1234 user 5w REG 8,1 1048576 123456 /home/user/test.log (deleted)
恢复:
cp /proc/1234/fd/5 /home/user/test.log
✅ 成功率极高
extundelete# 安装
apt install extundelete
# 恢复单个文件
extundelete /dev/sda1 --restore-file /home/user/test.txt
# 恢复整个目录
extundelete /dev/sda1 --restore-directory /home/user/docs
# 恢复全部
extundelete /dev/sda1 --restore-all
恢复文件在:
RECOVERED_FILES/
testdisk / photorec适合:
apt install testdisk
testdisk
或:
photorec /dev/sda1
⚠️ 恢复的是“文件内容”,文件名通常丢失
如果你有:
rsynctarborgtimeshift直接恢复即可。
| 文件系统 | 推荐工具 |
|---|---|
| ext3 / ext4 | extundelete |
| xfs | xfs_undelete(实验性) |
| btrfs | 快照恢复 |
| zfs | zfs rollback |
| FAT / NTFS | testdisk |
# 1. 使用回收站
alias rm='trash-put'
# 2. 增加确认
alias rm='rm -i'
# 3. 定期备份
rsync -a /data /backup
如果你愿意,可以告诉我:
rm / rm -rf / 格式化)我可以给你更精确的恢复命令。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。