我一直成功地从 BIOS 启动到 Ubuntu 16.04,直到 Windows 10 秋季创建者更新现在阻止我这样做。我的 BIOS 模式是 UEFI,我的启动选项如下:
Boot Option Menu
OS boot Manager
Ubuntu <TOSHIBA MQ01ABF050>
ubuntu <TOSHIBA MQ01ABF050>
Boot From EFI File
在 BIOS 中选择第一个 Ubuntu 会显示以下错误消息并打开 Windows,这不是我想要的。选择第二个 ubuntu 只会打开 Windows。请注意,此错误消息至少只能显示一秒钟,然后就消失了,所以我拍了一段视频并抄下了详细信息。
Malformed binary after Attribute Certificate Table
datasize: ? SumOfBytesHashed ? SecDir->Size:
hashsize: ? SecDir->VirtualAddress : 0x00000068
Failed to loadimage : Invalid Parameter
start_image() returned invalid Parameter
Windows 在正常启动时运行正常。
我读过很多这样的帖子/答案https://askubuntu.com/questions/874181/windows-10-update-broke-my-mbr-grub但我真的不确定我应该针对我的特定系统做些什么。
这是我的 Windows 更新后的系统分区。 系统分区
这是我在 BIOS 系统配置中的 UEFI 启动顺序。
UEFI Boot Order
OS boot Manager
Internal CD/DVD ROM Drive
USB Diskette on Key/USB Hard Disk
USB CD/DVD ROM Drive
! Network Adapter
我尝试重新排序,Secure Boot Disabled
但没有成功。
我确实知道我可能必须重新安装 Grub 和 Ubuntu,但如果能得到一些专业建议就更好了。谢谢。
答案1
在我看来,Linux 内核映像已被您提到的操作损坏。修复此问题的最简单方法是通过启动实时 Ubuntu(USB)重新安装内核。尝试替换 vmlinuz 和 initrd。通过与 grub 配置进行交叉检查,确保您替换了正确的文件。
答案2
好的,我使用实时 USB 重新安装了 ubuntu/kubuntu 发行版,在启动管理器中重新排序了列表,现在可以从 BIOS 启动了。我曾希望新安装能够检测到以前的 ubuntu,但事实并非如此。显然,如上所述 - Windows 更新已损坏 ubuntu 分区。我还没有尝试替换 vmlinuz 和 initrd - 当我完全理解我在做什么时会尝试。
顺便说一句,Windows 更新并非全部有效,并且 Windows 无法显示南半球的正确时间,但 Linux 可以。