我有一台配置为双启动 OSX 或 Ubuntu 的 Macbook Pro。最初,我将驱动器均匀地分配给这两个系统,但由于我更频繁地使用 Ubuntu,并且其分区上的空间不足,因此我想重新配置分区,让 Ubuntu 占用更多的磁盘空间。
我尝试使用 GParted,既从 Ubuntu 内部运行,也从 GParted 的 Live CD 运行,但在这两种情况下我都得到以下屏幕:
如您所见,Ubuntu 有大约 72GB 的空间。我已经缩小了 OSX 分区,剩下大约 45GB 的可用空间。我试图扩展 Ubuntu 分区以包含额外的 45GB 空间,但 GParted 不允许我这样做,大概是因为中间那个奇怪的“未知”1MB 分区。我不能 100% 确定它是什么,但它的标志列出了“bios_grub”,所以我假设它是 rEFIt 安装 Grub 的地方。不幸的是,GParted 不允许我重新定位这个分区,只能删除它(如果我这样做,我肯定会搞砸我的系统)。
如何调整我的 Ubuntu 分区大小以使用我的可用磁盘空间?
编辑:我正在运行 Ubuntu 10.04。
答案1
是的,该分区是 PC/AT 的 GRUB 所在的位置;在 EFI 系统上您不需要它。
问题是 Ubuntu 安装程序无法完全处理 EFI 机器。(您要么使用了旧版本的 Ubuntu,要么使用了现代版本(但不是 64 位)的 Ubuntu。)因此,您安装的 GRUB 需要旧的 PC/AT 样式固件。由于您的硬盘分区为 EFI,因此 GRUB 安装在特殊标记的分区中(具有无效的 GUID)。但 GRUB 期望在其上运行的实际固件是旧的 PC/AT 固件 — 即您的 Macintosh 使用兼容性支持模块已启用。
这是使用 GRUB 的一个相当愚蠢的方法,因为存在一个版本的 GRUB 可以作为一个合适的 EFI 启动应用程序,因此存在于EFI 系统分区作为一个普通文件,就像普通的 EFI 启动应用程序一样,而不需要具有无效 GUID 的额外分区。
从旧的 PC/AT GRUB 切换到 EFI GRUB 并非易事,也超出了本回答的范围。去看看 Rod Smith 对这个问题的看法。但是一旦你这样做了,就可以删除 PC/AT 启动分区的 GRUB,这样你就可以再次移动其他分区。
顺便说一下,GRUB for PC/AT 启动分区不可移动的原因是即使你的机器有现代固件,允许启动应用程序使用文件系统和文件,PC/AT GRUB 仍然使用过时的“嵌入式块列表”系统来定位下一个阶段。移动分区会破坏这些嵌入式块列表,因为它们最终不再指向目标分区内的块。这就是分区工具拒绝重新定位该分区的原因。
进一步阅读
- 罗德·史密斯(2011-05-17)。在 Mac 上使用 EFI 启动 Ubuntu. 罗德的书。
- UEFI启动. 社区 Ubuntu 文档。2011-11-23。