大约一周前,我在 Windows 上安装了 Ubuntu 12.04,现在无法再启动 Windows。当我尝试启动时,出现错误“无效的 EFI 文件路径”。我尝试将 GRUB 中条目的启动参数从 更改为/dev/sdc1
(/dev/sda*
星号代表 1-3),以查看是否是这个问题,因为实际上除了 on 之外没有 Windows 安装/dev/sda
,但这样做并没有奏效。
以下是 Boot Repair 中的粘贴内容:http://paste.ubuntu.com/1169189/
我知道修复 Windows 启动加载程序会禁止我启动 Ubuntu,但我需要进入 Windows 来做一些事情,所以值得一试吗?
答案1
我认为你的问题是这样的:
menuentry "Windows bootmgfw.efi.bkp, generated by Boot-Repair" {
search --fs-uuid --no-floppy --set=root 0648-FFF7
chainloader (${root})/EFI/Microsoft/Boot/bootmgfw.efi.bkp
}
menuentry "Windows memtest.efi, generated by Boot-Repair" {
search --fs-uuid --no-floppy --set=root 0648-FFF7
chainloader (${root})/EFI/Microsoft/Boot/memtest.efi
}
menuentry "Boot bootx64.efi.bkp, generated by Boot-Repair" {
search --fs-uuid --no-floppy --set=root 0648-FFF7
chainloader (${root})/EFI/Boot/bootx64.efi.bkp
}
请特别注意chainloader
--bootmgfw.efi.bkp
和行上的文件名bootx64.efi.bkp
不是有效的 EFI 引导加载程序文件,但它们似乎不存在于您的磁盘上。然而,文件bootmgfw.efi
和bootx64.efi
做存在并且是有效的 EFI 引导加载程序文件名。(当然,我不能保证您获得的文件是有效的,但文件名是有效的。)我建议您在文件中更改这些文件名/etc/grub.d/40_custom
,然后键入sudo update-grub
以将这些更改传递给 GRUB 配置文件。您还可以手动检查内容以/dev/sda1
确保这些文件存在且具有正确的文件名;有可能某些东西错误地重命名了文件,然后更新了您的 GRUB 配置以匹配该名称。我不知道 GRUB 会如何应对这种滥用。
答案2
您应该使用自己的 Windows 7 安装介质来安装 Windows 引导加载程序,然后使用“EasyBCD”在 Windows 引导加载程序上为 Ubuntu 创建引导项。
答案3
首先尝试用以下命令更新 grub:
sudo update-grub
也许这可以修复 grub。如果不行,请尝试使用 Windows Media 修复 Windows MBR(主引导记录)。此操作会损坏您的 grub,但无需担心。您可以随时使用 Ubuntu 的实时媒体修复 grub