![HP ProBook 4720s UEFI 启动只能手动进入 12.04](https://linux22.com/image/1096158/HP%20ProBook%204720s%20UEFI%20%E5%90%AF%E5%8A%A8%E5%8F%AA%E8%83%BD%E6%89%8B%E5%8A%A8%E8%BF%9B%E5%85%A5%2012.04.png)
我正在尝试在 ProBook 4720s 上实现 UEFI 启动。因为我将 HDD 换成了 SSD,所以我的启动界面一片空白。
12.04 Live DVD 拒绝启动到 UEFI,Alternate 和桌面 CD 也是如此。但是,当我使用 ubuntu 中的 bootdisk 工具将 16Gb 闪存驱动器制作成实时 FS 时,我可以从 USB 启动,手动进入 UEFI 模式。当我从装有 12.04 Live DVD 的 USB 启动时,它甚至会避开 DVD 作为介质。
我安装了一个 GPT 分区表,其中第 1 部分,标签为 EFI,fs FAT32,标志为 BOOT,安装在 /boot/efi 第 2 部分,标签为 Linux-ROOT,fs ext4,无标志,安装在 / 第 3 部分,标签为 Linux-SWAP,fs swap,无标志,安装为交换
到目前为止,我的系统拒绝自行从硬盘启动。我必须选择“从 EFI 文件启动”,然后手动浏览到 (HD0,GPT1)\EFI\ubuntu\grubx64.efi,其他任何选项都以“无系统磁盘,请插入启动盘”结尾
我尝试安装 BURG,但这仅强制非 efi 启动。
我尝试了我能找到的大多数解决方案,但一个说 \EFI\grub\grub.cfg,下一个说 \EFI\ubuntu\ubuntu,cfg
我感到困惑和沮丧。如何在这台机器上以 UEFI 模式正确安装 Ubuntu 12.04???
答案1
出色地,
看来 HP ProBook 固件已损坏,或者我需要找到一种方法来重新创建 HP_TOOLS 分区并添加一些晦涩难懂的 HP 配置工具
我现在有一个启动系统。
我确实复制了
/boot/efi/EFI/ubuntu/grubx64.efi
到
/boot/efi/EFI/boot/bootx64.efi
并且系统正常运行。
我仍然不明白如何物理地改变 NVRAM 以接受 ubuntu 设置。
答案2
听起来您已经在 SSD 上安装了 Ubuntu,但它只能通过在固件的启动管理器中手动选择启动加载程序才能启动。如果这是不正确的,请澄清。我将在假设我正确总结了情况的情况下继续进行。
您应该首先通过手动启动并输入来检查启动设置sudo efibootmgr -v
。这将产生类似以下内容的输出:
$ sudo efibootmgr -v
Timeout: 10 seconds
BootOrder: 0000,0007,0006,0008
Boot0000* Ubuntu HD(2,1b8,64000,f1b7598e-baa8-16ea-4ef6-3ff3b606ac1e)File(\EFI\ubuntu\grubx64.efi)
Boot0006* Hard Drive BIOS(2,0,00)SATA: ST32000542AS .
Boot0007* CD/DVD Drive BIOS(3,0,00)PATA: HP DVD Writer 1040r .
Boot0008* INTERNAL EFI SHELL: ST32000542AS ACPI(a0341d0,0)PCI(1f,2)ATAPI(1,0,0)HD(2,1b8,64000,f1b7598e-baa8-16ea-4ef6-3ff3b606ac1e)File(\EFI\BOOT\BOOTX64.EFI)
详细信息可能与您有所不同。此示例显示 Boot0000 变量指向 GRUB 引导加载程序文件 ( \EFI\ubuntu\grubx64.efi
),并在该BootOrder
行中指定为第一个引导加载程序。
如果你没有看到 GRUB 的条目,你可以尝试使用以下命令创建一个efibootmgr
:
sudo efibootmgr -c -l \\EFI\\ubuntu\\grubx64.efi -L Ubuntu
此示例在 ESP 上为 /EFI/ubuntu/grubx64.efi 引导加载程序创建一个新条目,并将其命名为“Ubuntu”。请注意,您必须指定相对于 ESP 根目录的引导加载程序名称,并且必须使用双反斜杠 ( )\\
而不是 Linux 风格的正斜杠 ( /
) 来分隔目录元素。如果您的 ESP 不是 /dev/sda1,您可能还需要添加更多选项。(efibootmgr
有关详细信息,请参阅手册页。)
如果您有 GRUB 条目,则听起来您的固件已损坏并且未使用 NVRAM 条目。它可能正在寻找使用 ESP 上的默认文件名的引导加载程序——可能是 /EFI/Boot/bootx64.efi,或者可能是 /EFI/Microsoft/Boot/bootmgfw.efi。您应该能够将 grubx64.efi 从其所在的位置(可能是 /EFI/ubuntu)复制到其中一个默认名称,以使其自动启动。
答案3
如果您没有使用 EFI 启动 Windows 7,并且已经尝试使用 grub EFI,则可以将所有内容从 复制/boot/grub/
到HP_TOOLS/Microsoft/Boot/
并重命名grub.efi
为bootmgfw.efi
。执行此操作后,您可以grub_efi
从 HP 启动选择菜单上的 OS Boot Manager 选择启动。这实际上相当 hacky,但对我来说很有效,因为 Windows 将自动启动,并且可以使用 EFI BIOS 选择启动 Ubuntu,只需极少的用户输入。
我主要使用 Ubuntu,但在我的工作中,我发现自己更经常使用 Windows,因为他们为我需要支持的操作系统选择了较差的选择。如果你处于类似的情况,这个 hack 可能也适合你。