温馨提示×

linux分区表如何恢复

小樊
58
2026-09-21 21:42:06
栏目: 智能运维

在 Linux 下分区表恢复要根据分区表类型(MBR / GPT)、损坏原因以及是否有备份来处理。下面按常见场景系统说明。


一、先确认分区表类型

sudo fdisk -l /dev/sdX
  • 显示 Disk label type: dos → MBR
  • 显示 Disk label type: gpt → GPT

⚠️ 操作前务必不要写入新分区,也不要格式化


二、最安全的第一步:尝试只读备份恢复

1️⃣ GPT 分区表(最常见)

GPT 在磁盘末尾有备份分区表

sudo gdisk /dev/sdX

进入后若提示:

Found invalid GPT and valid Backup GPT

选择:

r  # recovery
b  # use backup
w  # write

✅ 可完整恢复


2️⃣ MBR 分区表

MBR 本身没有自动备份,但可尝试:

方法 A:TestDisk(强烈推荐)

sudo apt install testdisk
sudo testdisk /dev/sdX

流程:

  1. Create
  2. 选择磁盘
  3. 分区表类型(Intel / EFI GPT)
  4. Analyse
  5. Quick Search
  6. 若找到原分区 → Write

✅ 成功率极高(未覆盖数据的前提)


三、使用备份恢复(如果你之前做过)

1️⃣ sfdisk 备份恢复

备份:

sudo sfdisk -d /dev/sdX > part.table

恢复:

sudo sfdisk /dev/sdX < part.table

2️⃣ sgdisk 备份(GPT)

备份:

sudo sgdisk --backup=backup.gpt /dev/sdX

恢复:

sudo sgdisk --load-backup=backup.gpt /dev/sdX

四、分区表丢失但数据还在(无备份)

步骤建议

  1. 不要挂载
  2. 使用 TestDisk 扫描
  3. 找到原起止扇区
  4. 重建分区表(仅结构,不格式化)
  5. 挂载验证

示例(TestDisk 找到后):

Linux filesystem
Start 2048
End xxxxxxx

写入即可


五、MBR 引导记录损坏(分区表 OK)

sudo grub-install /dev/sdX
sudo update-grub

或重建 MBR:

sudo install-mbr /dev/sdX

六、误删分区但未写入数据

✅ 立刻停止写入 ✅ TestDisk 仍可恢复


七、常见错误与禁忌

❌ 用 fdisk 新建分区覆盖
❌ mkfs 格式化
❌ 在损坏盘上安装系统
✅ 优先只读分析


八、推荐工具汇总

工具 用途
testdisk 分区表恢复
gdisk GPT 恢复
sfdisk MBR 备份/恢复
sgdisk GPT 备份/恢复
dd 原盘镜像(谨慎)

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

  • 是 MBR 还是 GPT
  • 怎么损坏的(误删 / 装系统 / 断电)
  • fdisk -l 输出

我可以直接给你具体操作命令。

0 踩