温馨提示×

Ubuntu分区怎样恢复误删除

小樊
46
2025-12-27 23:51:45
栏目: 智能运维

Ubuntu 误删分区的恢复步骤

一 操作前的关键准备

  • 立刻停止在受影响磁盘上的一切写入操作(下载、解压、缓存、日志、安装等),优先将恢复操作放在Live CD/USB环境中进行,避免系统自动挂载写入导致覆盖。
  • 备份当前磁盘的分区表/MBR/GPT信息,便于回滚:例如使用命令备份 MBR(仅限传统 MBR 磁盘)sudo dd if=/dev/sda of=mbr_backup.bin bs=512 count=1,以及使用 sudo sfdisk -d /dev/sda > sda_partition_backup.txt 备份分区表。
  • 准备一个容量足够的外部磁盘用于拷贝恢复出的数据。
  • 重要数据建议先做整盘镜像再操作:sudo dd if=/dev/sda of=/path/to/image.img bs=4M status=progress(仅在确认磁盘空间充足且不影响恢复时使用)。
  • 恢复成功率取决于是否发生覆盖,越早开始越好。

二 使用 TestDisk 恢复分区表(优先方案)

  • 安装并启动:sudo apt update && sudo apt install -y testdisk,然后执行 sudo testdisk
  • 选择磁盘设备(如 /dev/sda),日志选择 Create
  • 选择分区表类型:常见为 Intel/PC(MBR)或 EFI GPT(GPT)。
  • 进入 Analyse,先做 Quick Search;未找到则做 Deeper Search
  • 在列表中找到被删除的分区(通常标记为 D),用方向键选中后用 P 预览关键目录/文件以核对大小与位置是否正确。
  • 选中需要恢复的分区,按 Enter 标记为 “*”(引导/激活),再选择 Write 将分区表写回磁盘,按 Y 确认,退出并重启。
  • 系统识别分区后,手动挂载验证:sudo mkdir -p /mnt/recovered && sudo mount /dev/sda2 /mnt/recovered && ls /mnt/recovered
  • 若分区已恢复但系统仍无法启动,可使用 Boot-Repair 进行引导修复:sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt update && sudo apt install -y boot-repair && boot-repair,选择“推荐修复”。

三 分区无法写回或仅文件被删除时的替代方案

  • 使用 extundelete(仅限 ext3/ext4):先确保目标分区未挂载或只读挂载,然后恢复:
    • 恢复单个文件:sudo extundelete /dev/sdXY --restore-file /path/to/file
    • 恢复全部可恢复文件:sudo extundelete /dev/sdXY --restore-all
      /dev/sdXY 替换为实际分区(如 /dev/sda2),恢复文件会输出到当前工作目录的 RECOVERED_FILES 中。
  • 使用 PhotoRec(文件级恢复,不依赖分区表):sudo apt install -y testdisk(包含 photorec),运行 sudo photorec,选择磁盘/分区与文件类型,指定输出目录到外部磁盘,开始扫描并恢复。
  • 使用 foremostsudo apt install -y foremost,执行 sudo foremost -i /dev/sdX -o /path/to/output(注意是对整盘或分区镜像操作,输出目录需在其他磁盘)。

四 常见问题与修复

  • 分区找回但系统无法启动:多为 GRUB/引导文件缺失,使用 Boot-Repair 一键修复或在 Live 环境中重装 GRUB。
  • 分区表类型选错:TestDisk 中可退回重新选择 Intel/EFI GPT 再次分析。
  • 深度扫描耗时较长:耐心等待,不要中断;扫描结果务必用 P 预览核对。
  • 恢复后文件系统报错:先尝试 sudo fsck -y /dev/sdXY 检查修复;若仍异常,考虑从备份恢复或再做镜像后尝试其他工具。

五 预防与后续建议

  • 定期做系统/分区快照与备份(如 Timeshift、Deja Dup),重要数据多副本离线/异地保存。
  • 分区调整、格式化等高风险操作前先备份分区表与关键数据。
  • 避免在疑似故障磁盘上安装软件、下载大文件或执行会写入的操作。
  • 对关键业务环境,建议准备可启动的救援介质定期演练恢复流程

0