我最近在 HP Envy 上安装了 Ubuntu 14.04(第一次使用 Linux),并一直在尝试让双启动正常工作。我四处寻找并尝试运行启动修复(以下是结果),但它仍然说启动文件距离磁盘的起始位置很远。我还运行了 efibootmgr,结果如下:
BootCurrent: 0000
Timeout: 0 seconds
BootOrder: 3002,3000,3001,2001,2002,2003
Boot0000* ubuntu HD(2,c8800,82000,a0d91f49-899b-46ac-8863-35f2d16774c4)File(\EFI\ubuntu\shimx64.efi)
Boot0001* Ubuntu HD(2,c8800,82000,a0d91f49-899b-46ac-8863-35f2d16774c4)File(\EFI\ubuntu\grubx64.efi)RC
Boot0002* Windows Boot Manager HD(2,c8800,82000,a0d91f49-899b-46ac-8863-35f2d16774c4)File(\EFI\Microsoft\Boot\bootmgfw.efi)RC
Boot2001* USB Drive (UEFI) RC
Boot2002* Internal CD/DVD ROM Drive (UEFI) RC
Boot3000* Internal Hard Disk or Solid State Disk RC
Boot3001* Internal Hard Disk or Solid State Disk RC
Boot3002* Internal Hard Disk or Solid State Disk RC
Boot3003* Internal Hard Disk or Solid State Disk RC
Boot3004* Internal Hard Disk or Solid State Disk RC
Boot3005* Internal Hard Disk or Solid State Disk RC
Boot3006* Internal Hard Disk or Solid State Disk RC
Boot3007* Internal Hard Disk or Solid State Disk RC
Boot3008* Internal Hard Disk or Solid State Disk RC
Boot3009* Internal Hard Disk or Solid State Disk RC
Boot300A* Internal Hard Disk or Solid State Disk RC
看起来非常混乱,并且没有将 efi 文件放在开头。关于如何解决这个问题,有什么建议吗?
谢谢。
答案1
首先,对于使用 EFI 启动的计算机来说,启动文件远离磁盘起始位置的抱怨是无关紧要的。BIOS 下存在限制(具体取决于 BIOS 的旧程度),但即使在(现代)BIOS 下,您的 750GB 磁盘也不会造成任何问题。
其次,您可以BootOrder
使用 选项更改变量efibootmgr
,-o
如下所示:
sudo efibootmgr -o 0,1,2
此命令将首先设置两个ubuntu
实例,然后Windows Boot Manager
设置条目。应该成功了。不幸的是,有些 EFI 存在错误,会“忘记”BootOrder
条目或出现其他错误。如果您遇到问题,我建议您在 Windows 管理员命令提示符窗口中尝试以下命令:
bcdedit /set {bootmgr} path \EFI\ubuntu\shimx64.efi
(如果您已禁用安全启动,则可以shimx64.efi
用替换grubx64.efi
,尽管在禁用安全启动的情况下,两者都应该可以使用。)
如果失败,则您的固件可能有缺陷。HP 可能会提供更新。如果没有,或者没有帮助,并且您的计算机处于退货期限内,请将其退回以获得退款并购买未损坏的产品。如果您无法做到这一点,那么您将陷入非常丑陋的解决方法的境地,例如重命名 GRUB 以使其假装是 Windows 引导加载程序。请参阅这里有关该主题的一些信息,尽管是专门为 rEFInd 编写的。但基本原则适用于任何事物。
答案2
如果您进入 BIOS 选项,其中只看到 osmanager 和 USB、磁盘等。您必须突出显示 osmanager 并按下,enter您将获得一个包含 Ubuntu Windows 和任何其他发行版的菜单。使用f5和f6重新排列以符合您的喜好,然后单击f10保存。如果您使用多重启动,并且在 grub 菜单中只看到一个 Linux 发行版,请输入 Linux 并使用
sudo grub-update
答案3
就我而言,解决方案是:
sudo su
cd /boot/efi/EFI
mv BOOT BOOT_bak
cp -R ubuntu BOOT
cd BOOT
mv shimx64.efi bootx64.efi
感谢 idimopoulos戴尔论坛
答案4
在类似情况下(使用 HP250G7 笔记本电脑),更改启动顺序会失败,但停用所有 Windows 条目(0000、0002)会有所帮助:
$efibootmgr -b 0 -A
$ efibootmgr -b 2 -A
$ efibootmgr
BootCurrent: 0003
Timeout: 0 seconds
BootOrder: 0000,0003,2001,2002,2004
Boot0000 Windows Boot Manager
Boot0002 Windows Boot Manager
Boot0003* debian
Boot2001* EFI USB Device
Boot2002* EFI DVD/CDROM
Boot3000* Internal Hard Disk or Solid State Disk