使UEFI,GPT,Bootloader,SSD,USB,Linux和Windows协同工作


22

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

  • UEFI代替BIOS
  • SSD而不是HDD
  • GPT分区方案代替MBR
  • USB从引导而不是从光盘引导。

我需要同时使用Windows和Linux。我试图使它们并存,但没有成功。

大多数Linux发行版isos甚至在从USB启动的UEFI系统上都无法正常工作。(甚至没有自称最先进的Fedora。我也尝试了Linux Mint Debian Edition和Sabayon Linux(根据本指南),这些方法都行不通。只有Ubuntu对我有用。

我首先安装了Windows 8,该Windows 8创建了sda1:恢复,sda2:EFI系统,sda3:msftres,sda4:NTFS Windows。Windows正常工作。然后,我创建了sda5:linux-swap,并将Ubuntu安装到sda6:btrfs中。重新引导后,没有按预期显示GRUB2,而是将系统引导到Ubuntu。我无法再访问Windows。

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

结果对我来说不是很满意。

我该怎么做才能修复所有问题?或提出不同的要求,在可能的情况和要求下,应在什么时候安装什么操作系统,以便在UEFI GPT系统中可以正常工作的引导加载程序,向我介绍可以正常工作的Linux和Windows。


在Google上找到了此文件:rodsbooks.com/efi-bootloaders
哈里·约翰斯顿

在这种情况下也有用:unix.stackexchange.com/a/40775/12779
Marco Marco

Answers:


23

好的,这是一个非常复杂的过程,但是我解决了我的问题,一切正常进行。

我正在为所有人记录解决方案:

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

  2. 可选:安装Linux发行版,该发行版可通过USB在GPT UEFI系统上正常运行。我不知道是哪个。我安装了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,并将其更改为“ use as efi”。创建一个ext4,安装Ubuntu。重新启动后,我们会看到一个运行良好的GRUB2,它可以检测Ubuntu和Chakra Linux。

  5. 现在,我们将配置GRUB2以检测Windows。这是一个已知的错误,但是,Rasmus Pedersen的变通办法是有效的。请注意他所犯的键入错误:它是/ etc / default / grub而不是s,而不是/ etc / defaults / grub。在编写“ chainloader($ {root})/ efi / Microsoft / Boot / bootmgfw.efi”时,我用大写字母写了/ EFI /以确保。完成后,将为我们提供带有正常Windows 8条目的GRUB2。

  6. GRUB2在具有这么多引导选项的情况下看起来不是很好,并且不是我的首选顺序。因此,我在Ubuntu中安装并使用grub-customizer,如下所示。我将其配置为隐藏memtest,恢复和旧内核,然后重新排序以将自定义脚本和Windows放在首位。做完了


非常好,感谢这篇文章,我只是想做一件事:我想将软件RAID 0用作Windows 7,将Linux用作4种分区的Linux,我已经经历了很多次在“技术用途”中配置RAID 0的内容,除了RAID 0上的双引导Windows7。有人有经验吗?感谢您提供任何信息。问候,马丁

非常感谢您的回答,但我已按照您的步骤进行。完成第5步后,无法使用该条目启动Windows 8。我确定输入是正确的,因为Windows 8徽标已出现不久,但是此后什么也不会出现,并且系统将自动重新启动。因为我同时使用uefi模式安装了Windows 8和Ubuntu,所以我的uefi中同时安装了uefi Ubuntu和uefi Windows启动管理器。在安装Ubuntu之前,Windows引导管理器可以将我引导到Windows8。但是毕竟,我已经不起作用了。它给了我和选择windo时一样的错误

这个答案对我的安装非常有用。
davidtbernal,2012年

尼斯分享@gbag。对于那些使用Ubuntu并GRUB2代替Ubuntu 的用户rEFInd,根据bugs.launchpad所述,“未检测到Windows启动项”错误已在ubuntu中修复,从12.04.3开始(“ Saucy”类别3)。
tuk0z

3

Kubuntu和LinuxMint KDE发行版对我使用GPT和EFI很好。

脚步:

  1. 启动Windows 7/8安装并配置HDD分区,它将为Windows 8和恢复分区自动创建EFI引导,MS System Reserved。安装Windows。
  2. 安装具有EFI支持的所需Linux发行版。选择手动分区,然后在“ /”根分区上安装引导程序,Grub 2 EFI文件将与Windows一起自动安装在EFI引导分区上。
  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年春季还有很长的路要走。

祝好运。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.