如何重新签名 Windows 启动加载程序以在 HP 笔记本电脑上重新启用安全启动?

如何重新签名 Windows 启动加载程序以在 HP 笔记本电脑上重新启用安全启动?

我刚买了一个“惠普 Pavilion 15-B055ca (C7C80UA#ABL) 超极本”前几天从我当地的电脑商店买了一个,还有一个 SSD 硬盘。

我移除了原来的 500GB HDD,安装了 120GB SSD,通过 USB 加载了 Ubuntu 实时 CD,并使用“GParted”首先缩小 500GB HDD 上的 Windows 分区,然后将它们复制到我的 SSD 上,留下一些空间以便以后双启动 Ubuntu 12.10...

我不得不将我的 Windows 分区重新标记为“启动”,而且我无法复制格式化为“msft”的小分区(可能是 GParted 无法处理的专有 Microsoft 格式?),也无法在支持 UEFI 的主板上启用传统模式,但我最终能够在 SSD 上运行预装的 Windows 8 版本,这是在从 HP 最初提供的 HDD 复制后实现的。之后我感觉非常好!这是一个明显的区别,这是肯定的。

我现在希望禁用传统模式并重新启用安全启动,但每当我执行这两件事中的任何一件时,我都会被 UEFI 安全启动应用程序告知“所选启动映像无法验证”。这对我来说很奇怪,因为从技术上讲,我使用的是与计算机制造时安装的完全相同的 Windows 映像,我只更改了驱动器类型、大小,并删除了一个小型 msft 格式的分区,因为我无法复制它。

我的问题是:如何重新签名我的 Windows 启动加载程序和/或在我的笔记本电脑上重新启用安全启动并能够启动到 Windows 8?

感谢您的阅读。

答案1

你不能重新签名任何事物使用 Microsoft 的密钥——只有 Microsoft 才能做到这一点。除非您修改了引导加载程序二进制文件,否则它仍然使用 Microsoft 的密钥签名。因此,您看到的有关无法验证二进制文件的消息可能适用于其他 EFI 二进制文件——可能是 EFI 版本的 GRUB。不过,从您的描述中很难判断发生了什么;您没有指定的技术细节太多了。因此,我建议您下载并运行启动信息脚本,该文件将这些详细信息收集到名为 的文件中RESULTS.txt。在此处发布该文件的链接。

您有可能可以实现这一点,但您可能需要进行 MBR 到 GPT 的转换和/或使用 Linux 之类的工具efibootmgrbcfgEFI 版本 2 shell 中提供的命令来重新启用 Windows 引导加载程序。您可能还需要安装垫片或者预引导加载程序RESULTS.txt如果您想在安全启动处于活动状态的情况下启动 Linux。我暂时不提供详细信息,因为这些取决于您当前的配置,而我只有在看到该文件后才会知道。

答案2

当我在带有 BIOS 的 HP 上收到此错误时:

MSR 分区已被锁定和/或损坏 - 这不允许通过 BIOS 禁用 UEFI。

错误是:安全驱动器:无法验证所选的启动映像。

我们认为这是由于损坏的 UEFI 密钥/数据被存储/锁定且无法响应或 BIOS 无法写入 MSR 驱动器造成的。

我将 MSR 驱动器(分区 0.. 128MB)重新格式化为 FAT32。我使用 diskpart 执行此操作 - 选择 MSR 分区并在获得它后输入 clean

仅此一点并不能解决问题。不过,我们现在可以加载到传统模式。

现在,当我选择启用传统模式时,它卡住了!

这并没有解决我的主要问题,但却导致 UEFI 被禁用。

希望这可以帮助!

下一个错误是找不到 \EFI\Microsoft\Boot\bootmgfw.efi!

我发现这个分区在所有 Windows /HP 机器上都是分区 3,并且它是隐藏的,没有驱动器号。bcdedit 显示位置为 Devices\VolumeDisk3 ...我为这个分区分配了驱动器号 G:(仍然隐藏,因为重新格式化后 MSR 分区仍然隐藏)

这将 bcdedit 位置更改为分区 G:

这使得 C:\Windows 目录成功启动!

即“正常启动 Windows”

相关内容