微软的 Windows 每次启动后都会杀死 Debian grub

微软的 Windows 每次启动后都会杀死 Debian grub

我的双启动 Windows 和 Debian ASUS PC 遇到问题。

一切都工作正常,直到几周前我进入了 MS-windows,几个月后我才进入。然后电脑直接启动进入MS-windows,稍后当我重新启动时,进入启动菜单,如果我选择Debian启动,它将进入华硕启动的高级设置菜单。然后我按照 Debian 的说明恢复了 grub,一切又正常了,但是如果我进入 Windows,它又会发生。

唯一的事情是,当我从 chroot 执行“boot-install —recheck /dev/sda”时,它只是告诉我 /efi/debian/grubx64.efi 是一个只读文件。

答案1

解决了。我最终通过 USB 的 debian 救援模式重新安装了 GRUB(如中所述https://wiki.debian.org/GrubEFI重新安装)然后,重新启动并进入我的 debian 操作系统(并连接到网络)后,我重新安装了更新的 grub: apt-get install --重新安装 grub-efi

此时,我不知道确切的原因,但如果我使用以下命令询问 efi 引导条目:

efibootmgr --详细

它显示了 4 个条目:

  • boot0000* debian 在 HD 上指向文件 \EFI\debian\grubx64x.efi
  • boot0001* 硬盘上的 Windows 启动管理器指向文件 \EFI\DEBIAN\GRUBX64.EFI
  • boot0002* 硬盘上的 Windows 启动管理器指向文件 \EFI\MICROSOFT\BOOT\BOOTMGFW.EFI
  • boot0003* UEFI(我的带有 debian 的 USB):请注意,它是在安装和 chroot 会话期间插入的,但不再插入。

所以我认为它可能没有“更新”启动项,所以我这样做了:

sudo 更新 grub

现在一切顺利,如果我要求启动条目(efibootmgr --详细):

  • Boot0001* 硬盘上的 Windows 启动管理器指向文件 \EFI\DEBIAN\GRUBX64.EFI
  • Boot0002* 硬盘上的 Windows 启动管理器指向文件 EFI\MICROSOFT\BOOT\BOOTMGFW.EFI

不知道到底发生了什么,如果有人有线索欢迎!

相关内容