ubuntu 18.04 和 windows 7 之间的双启动直接启动到 ubuntu

ubuntu 18.04 和 windows 7 之间的双启动直接启动到 ubuntu

我知道关于这些问题有几个线索,但是它们的解决方案似乎都对我没什么帮助。

我在这台电脑上安装了 WIN7 和 Ubuntu 14.04,双启动工作正常。请记住,它们是从同一个 SSD 启动的。我将 ubuntu 更新到 18.04(通过终端更新失败,我使用实时 USB 进行了全新安装),grub 消失了,它直接启动到 ubuntu。我的所有 Windows 文件都还在这里,完好无损。

我尝试过的:

  • os-prober 和 update-grub 或 update-grub2(没有区别)。
  • 启动修复和启动信息都没有什么区别。
  • 使用 grub 配置文件强制 grub 加载(grub 加载但我唯一的选择是启动 ubuntu)。
  • 尝试手动将 win7 安装添加到 grub 配置文件中,但没有多大用处(但无论如何我可能做错了)。
  • 尝试了 grub-customizer,但没有检测到 win7。

启动信息 pastebin 文件位于此处:

http://paste.ubuntu.com/p/yRDNz8rnCk/

根据 pastebin 似乎在 sda1 和 sda2 上有 Windows 7 加载程序文件(假设其中一个是系统保留分区?)但如果我运行 update-grub,我会得到以下输出:

Found linux image: /boot/vmlinuz-4.15.0-33-generic
Found initrd image: /boot/initrd.img-4.15.0-33-generic
Found linux image: /boot/vmlinuz-4.15.0-29-generic
Found initrd image: /boot/initrd.img-4.15.0-29-generic

所以我感觉它根本找不到窗口。它应该在 sda 的第 2 扇区而不是第 1 扇区中查找吗?老实说,我不知道这里出了什么问题。

任何帮助将不胜感激。

编辑:当我尝试手动将 Windows 添加到 grub 时出现以下错误:

error: no such device: D8E475D4E475B57A
error: can't find command 'drivemap' .
error: invalid EIF file path.

我想也许我应该修复 win7 加载程序。

编辑 2:我尝试使用 win7 live usb 修复 win7 启动管理器。它发现 windows 正常,但向我保证没有错误。

编辑 3:在实时 USB 上运行引导修复,而不是在已安装的版本中运行,这取得了一点进展。执行此操作后,grub 中出现了两个 win7 实例(Windows 7 /dev/sda1 和 Windows 7 /dev/sda2)。这是我使用 ubuntu 14.04 进行双启动时的样子。

不幸的是,它们都不起作用,并提示此错误:

error: file '/boot/grub/x86_64-efi/ntfs.mod' not found.
error: no such device: 4CA8732DA8731524.
error: can't find command 'parttool'.
error: invalid EFI file path.

重新启动计算机后,这两个 Win7 实例又消失了。

编辑4:

我读到有人说使用 gparted 检查分区可以解决一些问题,从而使其正常工作。好吧,当我尝试这样做时,我收到一条错误消息,提示我多次列出扇区,我应该执行 chckdisk /f /r。我想也许存在扇区问题,所以我制作了一个新的 Windows Live USB,以便可以从命令窗口运行 chckdisk。我启动到 BIOS 并告诉 BIOS 从 USB 启动。相反,它加载了 GRUB(但现在分辨率更高),选择 win 7 实际上启动到我的 win 7 安装,一切似乎都运行正常。

如果我不尝试通过 USB 启动,win7 将无法通过 Grub 工作。更令人困惑的是,如果我尝试从 Windows 访问此 USB,它会说它已损坏(当我尝试使 Windows 可启动时,我收到了一些错误消息,所以我假设这就是原因)。

长话短说,如果我想使用 Windows,我有一个解决方案,但它并不理想......也许这些额外的信息有助于诊断问题。

答案1

使用 grub 定制器,添加一个新条目,将其命名为 windows,并将类型设置为 windows chainloader。添加完成后,点击保存并重新启动。启动时使用 escape 来显示 grub 菜单并检查它是否启动。如果这是您已经尝试过的方法,那么很抱歉浪费了您的时间。编辑:人们在以下链接中提出了针对这种情况的解决方案将 Windows 7 添加到启动菜单

答案2

如果您的 Windows 安装在 EFI 中,而您的 ubuntu 安装在 BIOS 中,那么通常会发生这种情况。您只能启动 ubuntu。如果您想加载 grub,那么您的两个操作系统都必须处于相同的模式,无论是 BIOS 还是 EFI。假设您的 Windows 处于 BIOS 中,则让您的 ubuntu 可从 BIOS 启动,并选择“传统模式(即 BIOS)”- 从启动菜单启用,然后尝试安装 ubuntu。假设您的 Windows 处于 EFI 中,则让您的 ubuntu 可从 EFI 启动,并选择“传统模式”- 从启动菜单禁用,然后尝试安装 ubuntu。(下载指定 EFI 或 BIOS 的 iso 文件,或者在通过软件创建可启动文件时,选择通过 BIOS 和 EFI 启动这两个选项。)

相关内容