Skip to main content
  1. Posts/

记双系统 Windows 更新进 grub rescue

·88 words·1 min·
f4bb0
Author
f4bb0
Meow meow meow
Table of Contents

问题症状
#

洗澡前点了 Windows 更新,结果 Windows 更新后,启动进入了 grub rescue 模式。

继续检查:

  • 本来用的 rEFInd 引导,但 Windows 启动项在 rEFInd 里消失了。
  • 在 BIOS/UEFI 里能看到 Windows 的启动项,但选择后会闪一下下划线,然后又跳回 rEFInd
  • 这说明 Windows 的启动程序被调用了,但立即失败了?

核心原因:EFI 分区空间不足
#

299MB 的 EFI 分区,竟然只剩下 1.7MB 可用空间! 🤯

进一步排查,发现 EFI 分区里有 Arch Linux 遗留的巨型 .tmp 文件:

  • initramfs-linux-fallback.img.tmp,大小:121MB

结论
#

Windows 更新失败,就是因为 EFI 分区被 Arch 的 .tmp 文件塞满了,导致 Windows 无法写入或更新必要的启动文件,进而崩溃,喵。

解决过程
#

删除 Arch 那个 initramfs-linux-fallback.img.tmp 文件,利用 PE 的工具,修复 Windows 的 BCD (Boot Configuration Data) 和启动文件

重启后,Windows 顺利启动!🥳

后续处理
#

如果 rEFInd 的启动顺序可能被 Windows 覆盖了。回到 Arch Linux 系统,重新运行:

sudo refind-install