在 UEFI DUET 系统上进行 Windows 与 Ubuntu 的双安装

在 UEFI DUET 系统上进行 Windows 与 Ubuntu 的双安装

我有一台 Sony Vaio 笔记本电脑,它的主板启用了 BIOS。我最近买了一个 SSD。之前我在 320GB HDD 上使用 Arch 和 Ubuntu 以及 Windows 7,安装新的 SSD 后我更愿意这样做。

我想在我的 SSD 上使用 GUID 分区表 (GPT),因为它支持的分区不止 4 个。(我在想也许我以后也可以安装一些其他操作系统)。

我经历了Rodsbooks 指南。因此,我做了一些分区,这些分区反映为

sudo gdisk /dev/sda
GPT fdisk (gdisk) version 0.8.1

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): p
Disk /dev/sda: 500118192 sectors, 238.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 2C8E0936-465F-4BE2-B8D5-CA10A0C408C4
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 500118158
Partitions will be aligned on 1-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         1075199   524.0 MiB   EF00  
   2         1075200         1077247   1024.0 KiB  EF02  
   3         1077248         1339391   128.0 MiB   0C01  
   4         1339392       127168511   60.0 GiB    0700  
   5       127168512       169111551   20.0 GiB    8300  
   6       169111552       211054591   20.0 GiB    8300  
   7       211054592       251054592   19.1 GiB    0700  
   8       251054593       500118158   118.8 GiB   0700 

到目前为止,我对 Windows 7 x64 安装感到满意。然后我继续安装 Arch x64 和 Ubuntu 12.04 x64(后来我将其升级到 12.10)。Ubuntu 安装了 grub,现在我无法再启动 Windows。此外,它也无法识别 Arch Linux 分区,我认为我已成功安装。

我尝试了 jarondl 的解决方案这里但帮助不大。

问题:

  • 我如何指示我的 Ubuntu(和/或 Arch)安装内核/dev/sda1

  • 我可以安装吗重新索引在我的系统上?

  • 我可以将 Windows 7 升级到 Windows 8 还是全新安装 Windows 8,这会产生问题吗?

答案1

首先,不清楚 Ubuntu 安装的 GRUB 是 BIOS 模式版本还是 EFI 模式版本。如果是前者,您应该能够重新配置它以启动 DUET 和 Ubuntu,这应该会将其他所有内容恢复到可启动状态。为此,您需要编辑/etc/grub.d/40_custom以添加 DUET 的启动条目。或者,您可以恢复 SYSLINUX,然后通过将 BIOS 模式 GRUB 替换为另一个 EFI 模式引导加载程序,让您的 Ubuntu 安装以 EFI 模式启动。如果 Ubuntu 安装了 EFI 模式 GRUB,您需要重新配置 GRUB 以检测和启动您的其他操作系统,或者用其他东西补充或替换它。我的Linux 的 EFI 引导加载程序网页描述了您的一些选择。

您可以通过检查是否安装了Ubuntu 中的grub-pcgrub-efi包来判断您安装了哪个版本的 GRUB;前者是 BIOS 模式包,后者是 EFI 模式元包(它实际上安装了特定于体系结构的包)。

如果您发现您正在使用 EFI 模式 GRUB,那么安装 rEFInd 应该非常容易——您只需按照 rEFInd 网站上的说明进行安装即可。在 DUET 下,您可能必须EFI/BOOT/bootx64.efi在 ESP 上命名它,因为efibootmgr根据我的经验,DUET 似乎忘记了 创建的更改。FWIW,我自己的基于 BIOS 的笔记本电脑正在通过 DUET 和 rEFInd 启动 Windows 7、Fedora 17 和 Mint。(话虽如此,我维护 rEFInd,我是您引用的 DUET 网页的作者,所以我并不是这个游戏的新手。)

答案2

根据您上次的 Boot-Info (http://paste.ubuntu.com/1331027/):

  1. sda1 是 ESP(EFI 分区),因此您无法在其中安装任何内核。
  2. 您已经安装了 Refind。
  3. 如果微软做得好,升级Windows7到Windows8应该不成问题。不过在操作前,你应该备份你的文件。

相关内容