安装 Linux 后如何恢复 Windows 10 MBR?

安装 Linux 后如何恢复 Windows 10 MBR?

我最初安装了 Windows 10

然后,我安装了双启动的 Linux,并grub管理启动选择(Ubuntu、Windows 10)。

一切如预期。

有没有办法恢复 Windows 启动管理器,以便用它来决定启动选择(并默认启动 Windows)?然后我会考虑扩展它来启动 Ubuntu。

注意:我并不是想简单地将 Windows 10 设置为启动默认值grub- 我最终想grub与 Windows 启动管理器进行交换。

答案1

首先你需要了解一些事情。Windows 10 默认不使用主引导扇区。现代 Linux 发行版也不使用。在任何正常情况下,Grub 2 引导加载程序才不是覆盖 Windows 10 引导加载程序。它们可以在 EFI 分区上完美共存。在这种情况下,BIOS 的启动顺序决定启动哪个引导加载程序。

恐怕 Keltari 的回答假设您使用的是 MBR 分区表……这不太可能。公平地说,您的问题似乎做出了同样的假设。因此,在做其他任何事情之前,我建议您检查 BIOS 中的启动选项,看看 Windows 10 是否仍未列为选项。如果没有……那么是的……发生了糟糕的事情。

在某些情况下,Windows 10 引导加载程序的访问会被切断。

  1. 以 MBR 模式安装了 Windows 10。然后安装了 Linux。
    • 如果您的计算机上安装的是制造商提供的 Windows 10,那么情况就不是这样。
    • 这只能以两种方式合理地发生......
      1. 您安装 Windows 10 是为了升级之前的 Windows 安装,而之前的 Windows 安装又安装在之前的 Windows 安装之上,可以追溯到至少Windows Vista。如果您已经这样做了,您确实需要重新安装 Windows 10。
      2. 硬盘驱动器配置为 MBR/DOS 样式分区(而不是 GPT),并且您选择在安装 Windows 10 时不清除驱动器并重新开始。如果硬盘驱动器从旧计算机迁移到当前计算机,通常会发生这种情况。
  2. 您在 Linux 安装过程中删除/格式化了 EFI 分区。这是一个错误。这样做没有任何好处,而且您会丢失存储在那里的现有引导加载程序。
  3. 在安装 Linux 期间,分区方案已从 GPT 转换为 MBR。在这种情况下,您的 Windows 10 引导加载程序仍位于 EFI 分区上您将其保留的位置。

对于情况 #1 或 #2:

您需要从 Windows 10 安装盘恢复引导加载程序。如果您的计算机没有附带 Windows 10 安装盘,则需要获取一个。可以合法下载 Windows 10 ISO来自微软网站。然后,您可以使用 Linux 中的刻录实用程序将 ISO 映像应用到空白 DVD-R。如果您的计算机在保修期内,您可能能够从制造商处获得 Windows 10 安装 DVD……但请确保您清楚自己想要 Windows 10 安装磁盘不是系統恢復磁碟。

从 Windows 10 DVD 启动(通过“传统”启动或“UEFI”启动...分别用于 MBR 分区表或 GTP 分区表)。当您进入安装欢迎屏幕时,屏幕上会显示Install Now继续并忽略Install Now按钮,然后单击Repair your computer

  • Choose An Option菜单中选择Troubleshoot
  • Troubleshoot菜单中选择Advanced
  • Advanced菜单中选择Startup Repair

然后,您可能会或可能不会被要求输入用户名和密码才能登录。如果它确实出现了,这是一件好事……这意味着 Windows 修复肯定找到了您的 Windows 10 安装。如果它没有出现,也没什么大不了的。无论哪种方式,它都应该开始尝试各种自动诊断和修复程序。在理想情况下,这将恢复 Windows 10 引导加载程序。

如果你的系统使用 MBR,那么它将取代 Grub 2 引导加载程序。如果你的系统仍在使用 EFI 引导,它将不是删除 Grub 2 引导加载程序...它将与其一起自行安装。在后一种情况下,您仍可能需要进入 BIOS 并更改启动顺序,以便 BIOS 启动 Windows 10 引导加载程序。

如果这不起作用,那么解决方案无疑会更加复杂。你可以将电脑交给专业技术人员,也可以将其清除并从头开始重新安装 Windows 10。

对于 #3 的情况:

在转换为 GPT 之前,您需要格外确定这是发生的事情。您还需要先备份所有重要数据,因为这是名为“数据丢失和损坏”的邪恶怪物的领域。请花点时间处理这个问题...只需两次错误的按键就能抹去你的数据

首先,您需要识别磁盘驱动器的设备名称。找到并打开您的发行版的终端应用程序。它可能被称为 xTerm 或 gTerm。进入终端提示符后,输入 。lsblk这将显示如下内容:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0  28.3G  0 disk
├─sda1   8:1    0   953M  0 part /boot
├─sda2   8:2    0     1K  0 part
├─sda3   8:3    0  23.4G  0 part /
└─sda5   8:5    0     4G  0 part [SWAP]
sdb      8:16   0 149.1G  0 disk
└─sdb1   8:17   0 149.1G  0 part /mnt/storage

/找到和/或的挂载点/boot。挂载点对应于分区(或磁盘资源的某种其他形式的逻辑划分)。如果您查看每个挂载点的“名称”标题,您将看到该逻辑磁盘的device-name。如果您按照连接线到上面带有“类型”的列表,disk您将找到device-name物理磁盘的 。device-name物理磁盘的 就是我们需要的。它是什么或是否与上面的类似并不重要,只要记住它即可。

现在,在同一个终端上输入gdisk/dev/device-name你替换的地方device-namelsblk使用命令并在命令前键入来替换我们找到的命令/dev/。根据上面的示例,您需要键入gdisk /dev/sda。如果您收到有关权限或访问的错误,则需要以超级用户(可能是“root”)身份运行命令。如何执行此操作也因发行版而异……但您可以尝试在命令前面放置sudo或。从这里开始,我假设您使用,但只需替换适合您发行版的工具即可。sugdisksudo gdisk /dev/sdasudo

运行 gdisk 后你应该看到以下内容:

GPT fdisk (gdisk) version 0.6.14

Partition table scan:
  MBR: MBR only
  BSD: not present
  APM: not present
  GPT: not present


***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format.
THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by typing 'q' if
you don't want to convert your MBR partitions to GPT format!
***************************************************************


Command (? for help): 

这是重要的。如果您没有看到有关无效 GTP 和有效 MBR 的消息停在这里。这不是适合您的指南。请重新考虑第 1 点和第 2 点。

如果您确实看到此消息并且确定 Windows 10 是在 UEFI 模式下安装的,请按下 键p,然后按下Enter打印出分区表。您正在寻找类型为 的分区EFI System

如果没有,那么……这很糟糕,事情就变得不那么简单了。您需要调整分区大小以腾出空间用于新的 EFI 分区,然后创建 EFI 分区,格式化它Fat32,然后将分区类型设置为EFI System。然后然后您还需要遵循上一节。我不会指导您使用 gdisk 之类的东西来调整分区大小……这在最好的情况下也是很可怕的事情,我希望成为键盘上的那个人。您可以使用 gui 工具gparted轻松完成它,相对地但安全。

无论哪种方式,您首先需要将分区表转换回 GPT。按下w键,然后按下Enter键将更改写入硬盘。

已到达无可挽回的境地。您应该看到以下内容:

Command (? for help): w

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed, possibly destroying your data? (Y/N): 

按下y键,然后Enter重新写入分区表。您的数据不应该受到损害。如果您之前看到过 EFI 分区,那么此时您应该能够简单地重新启动进入 Windows。如果没有,您还有更多工作要做。

答案2

您可以通过启动 Windows 可启动媒体来重新安装 Windows 启动管理器。

  • 开机时按 F8 进入 Windows 恢复菜单。与其他版本的 Windows 8 不同,恢复菜单采用 Metro UI 风格。
  • 单击“疑难解答”。
  • 单击高级选项进入自动修复菜单。
  • 单击启动修复

这将返回 Windows 引导加载程序,但会删除启动 Linux 的功能。您可以按照以下步骤将 Linux 添加到启动菜单中方向

相关内容