安装 Windows 更新 3033929

mal*_*lat 6 linux debian windows-7 windows-update grub

我使用 grub 作为我的双引导笔记本电脑(DELL Vostro 3750)的默认引导加载程序。由于 Windows 更新 3033929,我的系统目前正在经历重启循环(无限)。

如上所述这里

如果某些用户的计算机满足以下条件,则无法安装此安全更新: 具有 Windows 和各种 Linux 发行版的多重引导配置

一个可能的解决方案似乎是:

要解决该问题,您可以使用 Windows 作为默认引导加载程序

许多文章描述了如何在启动时将 Windows 设置为默认的 grub 条目,但这与所描述的可能的解决方案完全不同。

那么有人可以描述一个Windows Update 3033929在双引导系统(grub 1.99-27+deb7u2 with: debian wheezy and windows 7/64bits)上安装的可行解决方案(分步)。两个分区分别驻留在同一个磁盘上:sda5sda2,所以我不能使用这里描述的解决方案。

我在网上找到的一个可能的解决方案是完全删除 grub,但这似乎是一个矫枉过正的解决方案(我什至不知道之后如何重新安装它)。我还想避免此处列出的解决方案,其中 grub 引导加载程序被删除并替换为Windows 7's "bootmgr".

har*_*ymc 7

文章Windows更新KB3033929更新循环包含此更新循环的唯一两个已知的解决方案。

在开始之前,我建议对整个磁盘进行映像备份,并确认您有正确的引导 CD 或 USB 以在发生灾难时恢复它。我建议将来在执行 Windows 更新之前始终进行此类映像备份,并将其保留为手动模式。

简单案例:Windows 安装在单独的磁盘上

  1. 关闭计算机并拔下非 Windows 驱动器,或者如果 BIOS 支持此操作,则将引导磁盘设置为包含 Windows 的磁盘。
  2. 直接重新启动到 Windows 并安装 KB3033929 更新。
  3. 再次重新启动以配置更新。
  4. 一切安装完毕并正常运行后,关闭 PC 并重新连接 Linux 驱动器。
  5. 下次重启时一切都应该恢复正常。
  6. 如果没有,请在 Windows 启动期间使用 F8 启动到安全模式并将 Windows 更新重置为“通知但让我下载”,或将此更新设置为“从不显示”,以避免在 Microsoft 最终正确安装之前安装它。

硬案例:Windows 和 Linux 安装在同一个磁盘上

在这种情况下,您必须用 Windows 的引导加载程序替换引导加载程序,让此更新自行安装,然后返回 GRUB。步骤如下:

  1. 从 Windows 安装媒体启动并选择命令提示符修复选项。

  2. 键入以下内容并按 Enter:

Bootrec.exe /FixBoot

然后键入并按 Enter:

Bootrec.exe /FixMbr

  1. 直接重启进入 Windows(Grub 不再存在)。

  2. 安装有问题的更新并正确启动和运行 Windows。

  3. 要恢复 GRUB,请将计算机引导至实时 Linux CD 或 USB 并选择“试用”操作系统。

  4. 找出 Linux 安装在哪个分区上,也许通过使用 Gparted 实用程序来查找根“/”分区。让我们假设这是在 sda1 上。

  5. 挂载那个分区。打开终端并输入并按 Enter 键:

sudo mount /dev/sda1 /mnt

  1. 使用以下命令重新安装 grub:

sudo grub-install /dev/sda –root-directory=/mnt

  1. 取出安装介质并重新启动。Grub 引导加载程序只会显示 Linux 安装。

  2. 要解决此问题,请启动到 Linux 桌面,打开终端并运行此命令以获取机器上所有可用的操作系统:

sudo update-grub

  1. 重新启动,您现在应该可以让 Grub 运行并且您的 Windows 安装为可启动选项。

  2. 如果上述方法对您不起作用,请尝试删除 Linux Grub 和恢复 Windows 7 引导 GUI 一文中的替代方法 。这篇文章也可能有用: 如何修复、调整或删除 Grub 引导加载程序

  3. 如果上述方法均无效,请恢复备份磁盘映像,抱歉,您现在又回到了原点。


小智 2

我知道这篇文章现在已经很老了,但希望如果将来有人遇到这个问题,这将为人们省去很多麻烦。

当 Windows 和 Linux 安装在同一张光盘上时,有一种更简单的方法可以解决这个问题,而不是经历“困难情况”答案中列出的所有工作(至少根据我的经验)。

Windows 机器上的双引导 Linux(尽管我不能代表所有发行版,因此在某些情况下可能并非如此)不会以任何方式删除或影响系统分区上的 MBR。它所做的只是使其处于非活动状态,而是使用 GRUB 引导加载程序分区作为活动分区。因此,绝对不需要搞乱任何一个引导加载程序,不需要重建任何引导加载程序,不需要任何复杂的事情。安装此失败的更新所需要做的就是:

  1. 将 Windows 系统分区(通常是最小的分区,100MB)更改为活动分区。如果您确实可以进入 Windows 系统,则可以通过磁盘管理 GUI 来完成此操作,或者您可以通过修复模式下的 Diskpart 命令提示符实用程序来完成此操作:
  • diskpart

  • select disk 0(或者 Windows 安装的任何磁盘号。您可以使用不带引号的“list disk”找到)

  • select partition 1(同样,您可以通过键入不带引号的“列表部分”来找到正确的分区号。100 MB 的分区通常是 Windows 系统分区)

  • active(这将激活所选分区,随后使 GRUB 分区处于非活动状态,因为它只允许一个活动引导分区)

  • exit并重新启动系统,它应该从 Windows 启动加载程序直接启动到 Windows

  1. 安装导致问题的更新(通常是 KB3033929)并重新启动 Windows。它应该安装成功。

  2. 重新启动到命令提示符并将活动分区更改回 GRUB 分区(通常不超过几百 MB),类似于我们在开始时激活 Windows 系统引导加载程序的方式。确保执行此操作时选择正确的分区号。命令示例:

  • diskpart

  • select disk 0

  • select partition 3

  • active

  • exit

  1. 重新启动系统。它应该像以前一样立即启动到 GRUB 加载程序,并且所有操作系统选项都可用。检查您的 Windows 更新,您将看到所有更新均已成功安装,并且您的系统应该正常运行。

这个解决方案花了我不到 2 分钟的时间就完成了,而且非常简单。我希望它可以帮助其他人,并在遇到这些麻烦时节省人们一些时间。