温馨提示×

怎样恢复debian误删文件

小樊
45
2026-10-17 05:24:24
栏目: 智能运维

在 Debian 中误删文件后,能否恢复取决于文件系统和操作是否及时。下面按「常见场景 + 操作步骤」说明。


一、先做什么(很重要)

  1. 立即停止写入该磁盘/分区
    • 不要再安装软件、下载、编译
    • 最好立刻卸载分区(如果可以):
      sudo umount /dev/sdXn
      
  2. 不要在原分区恢复文件
    • 把恢复工具装到 U 盘或其他磁盘
  3. 确认删除方式
    • rm 删除(最常见)
    • 格式化
    • 分区表丢失

二、ext4 文件系统(Debian 默认)

1️⃣ extundelete(最常用)

适合刚删除、未大量写入

sudo apt install extundelete

恢复单个文件:

sudo extundelete /dev/sda1 --restore-file /home/user/test.txt

恢复整个目录:

sudo extundelete /dev/sda1 --restore-directory /home/user/docs

恢复全部:

sudo extundelete /dev/sda1 --restore-all

恢复文件在:

RECOVERED_FILES/

⚠️ 文件系统必须是 ext3/ext4,且未严重损坏


2️⃣ ext4magic(更强大)

适合复杂情况

sudo apt install ext4magic

列出可恢复文件:

sudo ext4magic /dev/sda1 -L

恢复:

sudo ext4magic /dev/sda1 -r -d /restore

三、未知文件系统 / 通用恢复

3️⃣ TestDisk + PhotoRec

✅ 支持 ext4 / xfs / ntfs / fat

安装:

sudo apt install testdisk

TestDisk(恢复分区/误删目录)

sudo testdisk
  • 按提示选择磁盘
  • Analyze → List → 复制文件

PhotoRec(按文件类型恢复)

sudo photorec
  • 选择磁盘
  • 选择文件系统
  • 选择恢复目录(不要在原盘)

⚠️ 文件名会丢失,只按类型恢复


四、如果想恢复的是“正在运行的程序文件”

例如误删了 /usr/bin/xxx

sudo apt-get install --reinstall xxx

比恢复更可靠。


五、防止以后再误删

  1. 用 trash-cli 代替 rm
    sudo apt install trash-cli
    alias rm='trash'
    
  2. 重要数据定期备份
    rsync /data /backup
    
  3. 开启文件系统快照(btrfs / LVM)

六、总结速查表

情况 推荐工具
ext4 刚删 extundelete
ext4 复杂 ext4magic
分区误删 testdisk
文件类型恢复 photorec
系统文件 apt reinstall

如果你愿意,可以告诉我:

  • 文件系统类型(df -T)
  • 删除方式
  • 是否还在写入

我可以给你精确的一步一步命令。

0 踩