我有一个双启动系统,win7sdb1
和 ubuntu sdb6
,后者位于扩展分区上。
直到今天,update-grub2
还是找不到 Windows 分区,今天我决定尝试修复它。
使用 win7 安装 dvd,我使用 dos cmd 行尝试修复错误。建议的方法askubuntu
说使用bootsect /nt60 c:
和bootrec /fixboot
。这些方法对我来说都失败了,在尝试之后,我还尝试了bootrec /fixmbr
。无论是那样还是从 win 端进行文件系统检查,都设法使 ubuntu 分区 (sdb6) 完全消失。
我现在看到的完整磁盘如下:
ubuntu@ubuntu:~$ sudo fdisk /dev/sdb
Command (m for help): p
Disk /dev/sdb: 60.0 GB, 60022480896 bytes
255 heads, 63 sectors/track, 7297 cylinders, total 117231408 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xf2eeea4d
Device Boot Start End Blocks Id System
/dev/sdb1 * 2048 65383135 32690544 7 HPFS/NTFS/exFAT
/dev/sdb2 65384446 117229567 25922561 5 Extended
/dev/sdb5 92069888 117229567 12579840 82 Linux swap / Solaris
如您所见,sdb6 甚至不再存在。从gparted
我可以看到,扇区号之间存在未分配的空间:65384447 & 92069888
。
我尝试使用gpart
来获取实际扇区号以便使用parted -> rescue
,但gpart
返回错误的数据:
ubuntu@ubuntu:~$ sudo gpart /dev/sdb
Begin scan...
End scan.
Checking partitions...
Ok.
Guessed primary partition table:
Primary partition(1)
type: 000(0x00)(unused)
size: 0mb #s(0) s(0-0)
chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r
Primary partition(2)
type: 000(0x00)(unused)
size: 0mb #s(0) s(0-0)
chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r
Primary partition(3)
type: 000(0x00)(unused)
size: 0mb #s(0) s(0-0)
chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r
Primary partition(4)
type: 000(0x00)(unused)
size: 0mb #s(0) s(0-0)
chs: (0/0/0)-(0/0/0)d (0/0/0)-(0/0/0)r
这可能与 MBR 上次从 Windows 写入有关。但我不知道该怎么做。
我现在应该安装 grub 吗(即使没有 ubuntu 分区)然后再试一次gpart
?如果是,我该怎么做?有没有指南?如果没有,还有什么建议?
答案1
使用testdisk
实用程序,我能够扫描磁盘并再次找到分区。
testdisk
相当容易使用,特别是如果您对磁盘的“分区图”有所了解。