![从 Debian 升级到 Ubuntu 后,GRUB 不再识别 Win7](https://linux22.com/image/1164006/%E4%BB%8E%20Debian%20%E5%8D%87%E7%BA%A7%E5%88%B0%20Ubuntu%20%E5%90%8E%EF%BC%8CGRUB%20%E4%B8%8D%E5%86%8D%E8%AF%86%E5%88%AB%20Win7.png)
在笔记本电脑上使用 lubuntu 一段时间后,我决定升级我的台式机。我的 /dev/sda 上安装了 Windows 7,/dev/sdc 上安装了 Debian。安装 Debian 时,我查找了 Windows 的 efi 分区 (/dev/sda1),然后在那里安装了 grub。一切都很好。
几天后,我决定从 debian 转到 kubuntu。按照实时 USB 上的安装程序,我选择“使用整个磁盘”,并用 kubuntu 覆盖 /dev/sdc。此时,从 /dev/sda 启动将转到 grub-rescue,而从 /dev/sdc 启动将完全跳过 grub,因为它只有一个条目。
我从 debian 转到 kubuntu 的方式可能不是最好的方式。我使用 Windows USB 修复了 Windows 启动,并在 /dev/sdc 上启用了 grub。
现在两个系统都正常了,我尝试更新 grub 来检测 windows,但无济于事。我也尝试了 grub-config 程序,并查看了这里的一些问题,但对我没有任何帮助。
我知道自己的局限性,我之所以会走到这一步完全是因为错误的决定。我可以启动 Windows,但这不方便,我必须在启动菜单上手动选择磁盘。我也想在 grub 中使用它。有什么建议吗?
我从实时 USB 运行了启动修复,然后这是输出
答案1
我设法找到了解决方案。显然,UEFI 系统无法检测到 BIOS 系统。我怀疑发生的事情是,当我安装 debian 时,安装程序检测到 windows 是以 BIOS 传统模式安装的,并且也将自己安装为 BIOS。然后,当我卸载 debian 时,windows 启动被破坏,kubuntu 安装程序无法检测到任何东西,因此它被安装为 UEFI。后来我修复了 windows,结果有两个不兼容的操作系统。对此持保留态度,这只是我对情况的解释。
我找到的解决方案是这里。
注意:尽管我使用的是 Windows 7,但当我按照链接解决方案从 Windows 7 安装程序中所述的步骤运行命令时,最后一步失败了 (bcdboot c:\windows /ss: /f UEFI)。无法识别 /f 选项。我通过 Windows 10 安装程序命令行重新运行了所有内容,一切运行正常。