Azure Classic VM. How to fix Error: "We couldn't complete the updates. Undoing changes. Don't turn off your computer."

Azure Classic VM. How to fix Error: "We couldn't complete the updates. Undoing changes. Don't turn off your computer."

今天早上的自动 Windows 更新使我在 Azure 上的 Windows Server 2012 R2 经典虚拟机处于半崩溃状态。 VM 是一个 Web 服务器,其中的所有文件和应用程序仍然可以通过浏览器访问。换句话说,IIS 和许多其他服务仍然是 运行。然而不幸的是,虚拟机无法通过远程桌面访问,并且对来自 portal.azure.com 网站上 Azure 管理界面的命令没有响应。

这种类型的错误很常见,可以在许多其他网站上找到报告。 Windows 用户(不仅仅是 Windows 服务器)多年来一直发生该错误,none 在线解决方案将适用于 Azure 用户,因为它们涉及从 CD 重新启动、在引导过程中按 shift-f8、发出 DOS 命令、从备份恢复或取消选中 VMWare 或其他软件中的某些属性。

是否有人在 Microsoft Azure 上针对此问题提供了真正的解决方案?

我建议联系 Azure 支持,因为工程师可能需要做一些事情来解决问题,不幸的是,经典 VM 没有重新部署功能。

在为这个问题苦苦挣扎了数周之后,我想我能够在 Microsoft 支持的帮助下解决这个问题!我决定 post 此处的解决方案,以防将来它能对某人有所帮助。以下是您需要做的三件事来解决这个问题:

1-从崩溃前的备份恢复 VM。出现 "Undoing Changes" 崩溃的虚拟机此时已经完蛋了。现在,继续执行第 2 步和第 3 步,以确保下一批 Windows 更新不会再次崩溃!

2-在您的新 VM 上,确保 TEMP 和 TMP 的环境变量都指向 C:\Windows\TEMP。在我的例子中,它们都指向登录用户配置文件中的一个临时文件夹。

3-确保 C:\Windows\TEMP 始终为空。我通过设置一个计划任务来实现这一点,该任务运行一个简单的 BAT 文件,每天一次删除 C:\Windows\TEMP 中的所有文件和文件夹。我与一位 Microsoft 代表交谈过,他说即使您的 C:\ 驱动器中可能有足够的硬盘驱动器 space,Windows TEMP 文件夹实际上不应超过 500MB。当它变得非常大时,您可能会遇到 Windows 更新的一些问题(更新失败时我的容量不到 500MB)。

我只添加了 InboundPort 3389 RPD,现在运行良好。