Skip to content

Linux 误删文件恢复教程

💡 Linux 恢复比 Windows 更依赖工具

Linux 没有"回收站"的统一定义(桌面环境可能有 Trash,但命令行 rm 直接删)。且 ext4 和 XFS 的删除机制各有特点,需要用专门的 Linux 恢复工具。

ext4 文件系统恢复

ext4 删除文件后会清零 inode 中的块指针,但数据块本身还在。 需要用文件签名扫描(carving)来找回。

推荐工具:extundelete

bash
# 安装
sudo apt install extundelete

# 恢复特定文件
sudo extundelete /dev/sda1 --restore-file /home/user/文档.txt

# 恢复整个目录
sudo extundelete /dev/sda1 --restore-directory /home/user/

# 恢复所有可恢复的文件
sudo extundelete /dev/sda1 --restore-all

前提: 删除后分区没有被写入。所以一旦误删,立刻 umount 该分区。


XFS 文件系统恢复

XFS 删除文件后清理更彻底——inode 会被回收。恢复难度比 ext4 大。

推荐工具:PhotoRec(文件签名扫描)

bash
sudo apt install testdisk
sudo photorec /dev/sda1

按文件类型恢复(只能恢复文件内容,文件名丢失)。


通用工具:TestDisk

TestDisk 主要用于恢复分区表,也可以恢复删除的文件:

bash
sudo testdisk /dev/sda

📖 相关教程:Mac恢复 | 误删文件恢复

本站推荐均基于真实测试,部分链接为推广链接