让 UEFI、GPT、Bootloader、SSD、USB、Linux 和 Windows 协同工作

让 UEFI、GPT、Bootloader、SSD、USB、Linux 和 Windows 协同工作

我喜欢使用最新的硬件和最新的软件;因此我有一台笔记本电脑(联想 X220)

  • UEFI 取代 BIOS
  • SSD 取代 HDD
  • GPT 分区方案取代 MBR
  • 使用 USB 来启动,而不是使用光盘启动。

我需要同时使用 Windows 和 Linux。我尝试让它们一起工作,但没有成功。

大多数 Linux 发行版 iso 甚至无法在从 USB 启动的 UEFI 系统上运行。(甚至自称尖端的 Fedora我还尝试了 Linux Mint Debian Edition 和 Sabayon Linux(根据本指南) 不起作用。只有 Ubuntu 对我有用。

我首先安装了 Windows 8,它创建了 sda1:Recovery、sda2:EFI 系统、sda3:msftres、sda4:NTFS Windows。Windows 运行正常。然后我创建了 sda5:linux-swap,并将 Ubuntu 安装到 sda6:btrfs。重启后,我没有像预期的那样看到 GRUB2,而是系统直接启动到了 Ubuntu。我再也无法访问 Windows。

修复 Ubuntu btrfs 中的 dpkg,我遵循有关 UEFI 启动的 Ubuntu 文档。结果我的 GRUB2 坏了,但有趣的是,当我想要选择启动设备时,我不仅看到了内部 SSD、连接的 USB 设备或 LAN,还看到了 Grub2(坏了)、Ubuntu 和 Windows。

结果令我不太满意。

我必须做什么才能解决所有问题?或者换一种问法,考虑到我的可能性和要求,我应该在什么时候安装什么操作系统,以便我的 UEFI GPT 系统中有一个可以工作的引导加载程序,它可以为我提供可以工作的 Linux 和 Windows。

答案1

好的,这是一个非常复杂的过程,但我解决了我的问题并且一切都按应有的方式运作。

我正在为大家记录解决方案:

  1. 必须从 GParted Live 开始并创建一个新的 GPT 分区表。这将清除 HDD 和 SSD 上的所有内容。然后必须创建一个 8 MB 的小“未分区”分区并用“bios_grub”标记它。之后,创建一个 100 MB 的 fat32 分区,标记为“EFI”并标记为“boot”。(这是 MBR 过去所做的现代且更透明的等价物,请参阅此处以供参考

  2. 可选:从 USB 安装一个可以在 GPT UEFI 系统上正常工作的 Linux 发行版。我不知道哪些可以。我安装了 Chakra Linux 来试用。安装时,请确保将 100 MB fat32 安装为 /boot/efi。其余操作照常进行。我为 Windows 8 (300 GB) 留下了一些未格式化的空间,之后创建了一个 1 GB 的 linux-swap,创建了一个相邻的 ext4 (25 GB) 并将其安装为 /。安装后它无法启动,但我们会轻松修复它。再次执行整个步骤以安装更多发行版。

  3. 在上一步中留下的未格式化空间中安装 Windows 8。它将自动识别 EFI 系统分区,创建 MSFTRES 和 NTFS,并自行安装。安装后,我们只能启动 Windows,但我们稍后会修复该问题。

  4. Ubuntu 将修复所有问题。安装时选择 100 MB fat32 并将其更改为“用作 efi”。创建 ext4,安装 Ubuntu。重新启动后,我们会看到一个运行良好的 GRUB2,它可以检测 Ubuntu 和 Chakra Linux。

  5. 现在我们将配置 GRUB2 来检测 Windows。这是一个已知的错误,但是 Rasmus Pedersen 的解决方法是可行的。请注意他犯了一个输入错误:应该是 /etc/defaults/grub,而不是 /etc/defaults/grub,但没有 s。在编写“chainloader (${root})/efi/Microsoft/Boot/bootmgfw.efi”时,我以大写字母编写了 /EFI/,以确保万无一失。完成后,这将向我们展示一个有效的 GRUB2 和一个有效的 Windows 8 条目。

  6. GRUB2 看起来不太好看,有太多启动选项,而且顺序也不是我喜欢的。因此我在 Ubuntu 中安装并使用 grub-customizer如图所示。我将其配置为隐藏内存测试、恢复和旧内核,然后重新排序,将我的自定义脚本与 Windows 放在最上面。完成。

答案2

对于我来说,Kubuntu 和 LinuxMint KDE 发行版与 GPT 和 EFI 配合得很好。

脚步:

  1. 启动 Windows 7/8 安装并配置 HDD 分区,它将自动创建 EFI 启动、MS System Reserved,对于 Windows 8 也创建恢复分区。安装 Windows。
  2. 安装您想要的具有 EFI 支持的 Linux 发行版。选择手动分区并在“/”根分区上安装引导加载程序,Grub 2 EFI 文件将自动安装在 EFI 引导分区上,与 Windows 的文件一起安装。
  3. 安装 rEFInd 即可开始使用。rEFInd 将完成这项工作,并为您提供在 PC 启动时选择所需操作系统的选项。安装 rEFInd 信息 -http://www.rodsbooks.com/refind/installing.html。在安装 rEFInd 之前,您必须在启动时使用 BIOS 专用密钥选择启动设备,或者进入 BIOS 并将所需设备放在列表的首位,启动 Windows 并从 Windows 配置 rEFInd。确保在 BIOS 中将正确的 EFI 分区设置为默认启动设备。

我个人更喜欢 Kubuntu 12.10,也许 Mageia 3 也不错,但要到 2013 年春季还要很长一段时间。

祝你好运。

相关内容