我的主要问题是我刚刚购买了一台装有 WINDOWS 7 的华硕笔记本电脑,我想在其上安装 Ubuntu。
我想要双启动来在两个操作系统之间进行选择,我读到最好先安装 Windows,然后再安装 Ubuntu,因为 Windows 安装程序会覆盖 Ubuntu 的引导加载程序。
因此,我尝试从 USB 闪存盘安装 Ubuntu 12.04 LST,但当它检查其他操作系统时却找不到 Windows 7 系统。
我检查了可能的原因并从 HD 中的恢复分区重新安装了 Windows 7,但得到了相同的结果。
显然,Ubuntu 安装程序发现了两个分区表(GPT 和 MBR),但它不知道使用哪一个。
我曾经gdisk
尝试解决该问题。
从下面的 fdisk 和 gdisk 输出中,我知道我必须修复我的 MBR 分区,但我不知道如何操作。
ubuntu@ubuntu:~$ sudo fdisk -l
WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.
Disk /dev/sda: 500.1 GB, 500107862016 bytes
256 heads, 63 sectors/track, 60563 cylinders, total 976773168 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: 0x7834646f
Device Boot Start End Blocks Id System
/dev/sda1 1 4294967295 2147483647+ ee GPT
ubuntu@ubuntu:~$ sudo gdisk -l /dev/sda
GPT fdisk (gdisk) version 0.8.5
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Warning! Secondary partition table overlaps the last partition by
33 blocks!
You will need to delete this partition or resize it in another utility.
Disk /dev/sda: 976773168 sectors, 465.8 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): B1142EF0-26CB-4F15-9C42-AFC122E50E2A
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 976773134
Partitions will be aligned on 2048-sector boundaries
Total free space is 122884062 sectors (58.6 GiB)
Number Start (sector) End (sector) Size Code Name
1 2048 411647 200.0 MiB EF00 EFI system partition
2 411648 673791 128.0 MiB 0C01 Microsoft reserved part
3 673792 391383039 186.3 GiB 0700 Basic data partition
4 391383040 802693119 196.1 GiB 0700 Basic data partition
5 925575168 976773167 24.4 GiB 2700 Basic data partition
Command (? for help): r
Recovery/transformation command (? for help): o
Disk size is 976773168 sectors (465.8 GiB)
MBR disk identifier: 0x7834646F
MBR partitions:
Number Boot Start Sector End Sector Status Code
1 1 4294967295 primary 0xEE
答案1
我是 的作者gdisk
,我同意 psusi 所写的内容,但需要注意的是,我不知道 /dev/sda5 上到底有什么,所以我不能说删除它是否安全。如果它是你刻录到恢复 DVD 上的东西,那么应该但删除它是安全的。
如果 /dev/sda5 上有足够的可用空间(大约 17 KiB),您应该能够使用 GParted 或 Windows 工具调整分区大小,如果该工具不会因为非法分区表而失效。您最好将其备份到另一个磁盘,删除它,然后恢复它。不过,您需要使用能够恢复到较小分区的备份/恢复方法。(或者,您可以稍微缩小 /dev/sda4 以腾出空间来创建一个与现在一样大的新 /dev/sda5。)
另外,在无关紧要的事情上,您似乎有一台基于 UEFI 的 PC。在这样的系统上,第二个安装 Linux 的建议并不像在基于 BIOS 的系统上那么重要。(U)EFI 仍然有很多缺陷,但尽管存在这些问题,但它的启动管理比 BIOS 更合理,而且 Windows 在 EFI 上的表现优于在 BIOS 上的表现。
您可能需要使用gdisk
将 Linux 分区的类型代码从 0700 更改为 8300,以防止它们在 Windows 中显示为未格式化的磁盘。请参阅这里有关此问题的更多信息。
答案2
您正在使用 GPT,而不是 MBR,并gdisk
告诉您需要做什么:
You will need to delete this partition or resize it in another utility.
不清楚它指的是哪个分区,但那应该是最后一个分区,或者在您的情况下是第 5 个分区。它一直运行到磁盘的最后一个扇区,这是不允许的,因为 GPT 在磁盘的最后 33 个扇区中存储了备份副本。如果分区上没有任何重要的东西,您应该可以直接将其删除gdisk
。