在 Linux 下分区表恢复要根据分区表类型(MBR / GPT)、损坏原因以及是否有备份来处理。下面按常见场景系统说明。
sudo fdisk -l /dev/sdX
Disk label type: dos → MBRDisk label type: gpt → GPT⚠️ 操作前务必不要写入新分区,也不要格式化
GPT 在磁盘末尾有备份分区表
sudo gdisk /dev/sdX
进入后若提示:
Found invalid GPT and valid Backup GPT
选择:
r # recovery
b # use backup
w # write
✅ 可完整恢复
MBR 本身没有自动备份,但可尝试:
sudo apt install testdisk
sudo testdisk /dev/sdX
流程:
✅ 成功率极高(未覆盖数据的前提)
备份:
sudo sfdisk -d /dev/sdX > part.table
恢复:
sudo sfdisk /dev/sdX < part.table
备份:
sudo sgdisk --backup=backup.gpt /dev/sdX
恢复:
sudo sgdisk --load-backup=backup.gpt /dev/sdX
示例(TestDisk 找到后):
Linux filesystem
Start 2048
End xxxxxxx
写入即可
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 |
原盘镜像(谨慎) |
如果你愿意,可以告诉我:
fdisk -l 输出我可以直接给你具体操作命令。