在/boot分区重建Windows EFI文件(Linux+Windows双启动)

The*_*zer 21 windows fedora boot grub partitioning

我正在联想 IdeaPad N580(英特尔奔腾 B960 2.2GHz、4GB RAM、禁用安全启动的 UEFI)上双启动 Windows 10(周年前更新)和 Fedora 24。我最初只有 Windows 10,然后在它旁边安装了 Fedora 23,一切正常——当我升级到 Fedora 24 时它也能正常工作。不久前,我决定尝试 Ubuntu,并安装它只覆盖根目录, /boot 和 SWAP 分区并保留我的主分区。Windows 10 仍然可以在此处启动。然后我决定我不喜欢 Ubuntu 并使用 24 安装程序重新安装了 Fedora,试图完全按照我在 Ubuntu 上所做的来做。界面有点不同,但我确定我做对了:在我完成所有分区配置后,它给了我一个弹出窗口说“我们只会接触这些分区,” 它列出的分区是 root、/boot 和 SWAP。没有其他的。

然后,当它完成安装时,我重新启动。GRUB 菜单中唯一的选项是 Fedora 和 Fedora Recovery——没有别的。没有窗户。

我尝试安装 rEFInd,它过去对我有用。但它没有帮助,它给了我同样的两个选择。

Windows 分区仍然存在,我可以从 Fedora 访问它 - 诸如 /bootmgr 和 /Boot/BCD 之类的重要文件似乎完好无损。Windows 分区位于 /dev/sda5。

同样,在 Windows 启动管理器曾经出现的 BIOS 设置中,它没有。它只有 rEFInd 和一个包含我的硬盘驱动器型号的条目 - 我假设这只是将我带到 GRUB 菜单。(我实际上还没有尝试将它放在列表的顶部并重新启动 - 我有点懒:P)

有人可以帮忙吗?

更新: Manoj 发现了这个问题:通过格式化 /boot 分区,我摆脱了 Windows EFI 文件。所以我需要在/boot/efi/EFI/Microsoft. 我想我已经重建了目录/boot/efi/EFI/Microsoft/Boot,但我需要Microsoft. 有人能告诉我那里需要什么文件吗?

Man*_*noj 25

由于您已将所有必需的文件复制到boot/efi/EFI/Microsoft/Boot,因此您需要重建 Windows 加载程序配置。您将需要一个 Windows 可启动的 USB 或 DVD(最好是 64 位)。

1:从您的可启动媒体启动。确保您在 UEFI 模式下启动。

2 : 在第一个屏幕(要求您选择语言和键盘的地方),按Shift + F10。这会给你一个命令提示符。

3:输入diskpart然后list disk(列出所有可用磁盘)。通过键入选择合适的硬盘驱动器select disk #

4:现在输入list partition并确保有一个类型的分区system(efi 分区)。通过键入选择此分区select partition #并为其分配一个临时驱动器号,例如G键入assign letter=G.

5:为了确保正确分配驱动器号,请键入list vol. 你应该看到一个带有drive letter (Ltr) as G&的卷file system (Fs) as FAT32

6:diskpart输入exit关闭。确保您在X:\Sources.

7:类型cd /d G:\EFI\Microsoft\Boot\。现在一一运行这些命令。

bootrec /scanos     
bootrec /fixmbr    
bootrec /fixboot
bootrec /rebuildbcd    
bcdboot C:\Windows /l en-us /s G: /f ALL
Run Code Online (Sandbox Code Playgroud)

8:关闭命令提示符并重新启动系统。您现在应该启动到 Windows。

9 : 当然,您现在可能没有或没有 grub 菜单。但是安装 grub 要容易得多。按照这些链接中的任何一个获取更多信息。

链接1链接2LINK3

来源:1234

编辑- 确保尽快删除分配给 efi 分区的驱动器号 G,以防止它出现在我的电脑中。