症状
如果Windows Server 2012或Windows Server基于 2008 R2 的 Hyper-V 主机遇到计划外重启,并且虚拟机正在使用连接到虚拟 IDE 控制器的虚拟硬盘上的卷,则该服务器上的虚拟硬盘可能不再一致。
例如,假设 Hyper-V 主机服务器上有一个虚拟化域控制器。 当 Hyper-V 主机服务器崩溃或遇到电源中断时,Active Directory 数据库可能会损坏,或者虚拟机无法启动,并且可能会收到类似于以下内容的错误消息:
注意
c00002e2 目录服务无法启动,因为出现以下错误: %hs 错误状态: 0x%x。 请关闭此系统并重新启动到目录服务还原模式,检查事件日志以获取更多详细信息。
原因
出现此问题的原因是,如果来宾上的操作系统请求禁用磁盘缓存,Hyper-V 虚拟 IDE 控制器错误地报告成功。 这可能会导致应用程序发出 I/O 操作,它认为这些操作会持久保存到磁盘缓存中,而磁盘缓存在 Hyper-V 主机电源故障时不会保留这些操作。
有关更多背景信息,请转到“ 详细信息 ”部分。
解决方法
修补程序信息
Microsoft 提供了一个受支持的修补程序。 但是,此修补程序仅用于更正本文中所述的问题。 此修补程序仅应用于出现本文所述问题的系统。 此修补程序可能还会接受进一步的测试。 因此,如果这个问题没有对你造成严重影响,建议你等待下一个包含此修补程序的软件更新。
如果修补程序可供下载,则此知识库文章顶部有“修补程序下载可用”部分。 如果此部分不存在,请联系 Microsoft 客户支持服务部门以获取该修补程序。
注意 如果发生其他问题或需要进行任何故障排除,您应该另行创建服务请求。 对于此特定修补程序无法解决的其他支持问题和事项,将照常收取支持费用。 若要获取 Microsoft 客户服务和支持部门的完整电话号码列表或另行创建服务请求,请访问以下 Microsoft 网站:
http://support.microsoft.com/contactus/?ws=support 注意“修补程序下载可用”窗体显示修补程序可用的语言。 如果您找不到需要的语言,则说明该语言版本的修补程序未提供。
先决条件
若要应用此修补程序,必须运行 Windows Server 2012。
注册表信息
若要应用此修补程序,无需对注册表进行任何更改。
重启要求
应用此修补程序后,无需重新启动计算机。
修补程序替代信息
此修补程序不能替代以前发布的修补程序。
文件信息
此修补程序的全球版本将安装具有下表所列属性的文件。 这些文件的日期和时间使用协调世界时 (UTC) 列出。 这些文件在本地计算机上显示的日期和时间是本地时间再加上当前夏令时 (DST) 偏差。 此外,如果对这些文件执行某些操作,日期和时间可能会更改。
Windows RT、Windows 8和Windows Server 2012文件信息说明在同一包中包含重要Windows 8修补程序和Windows Server 2012修补程序。 但是,“修补程序请求”页上仅列出了“Windows 8”。 若要请求适用于一个或两个操作系统的修补程序包,请选择页面上“Windows 8”下列出的修补程序。 请务必参阅文章中的“适用于”部分,确定每个修补程序实际适用的操作系统。
通过检查在下表中显示的文件版本号,可以识别应用于特定产品、里程碑(RTM、SPn)和服务分支(LDR、GDR)的文件:
版本 产品 里程碑 Service branch 6.2.920 0.16 xxx Windows Server 2012 RTM GDR 6.2.920 0.20 xxx 和 Windows Server 2012 RTM LDR GDR 服务分支仅包含那些广泛发布以解决广泛分布的关键问题的修补程序。 除了广泛发布的修补程序外,LDR 服务分支还包含其他修补程序。
对于所有受支持的基于 x64 的 Windows 8 版本和 Windows Server 2012
| 文件名 | 文件版本 | 文件大小 | 日期 | 时间 | 平台 |
|---|---|---|---|---|---|
| Vmwp.exe | 6.2.9200.16623 | 4,040,704 | 2013 年 5 月 25 日 | 01:26 | x64 |
| Vmwp.exe | 6.2.9200.20728 | 4,040,704 | 2013 年 5 月 25 日 | 03:26 | x64 |
注意 安装此更新后,在 Hyper-V 虚拟 IDE 控制器中禁用磁盘缓存的请求将失败。 这是预期的行为。 你可能会在来宾计算机操作系统中收到 Active Directory 生成的警告消息。 此事件 1539 警告消息指出“Active Directory 域服务无法在以下硬盘上禁用基于软件的磁盘写入缓存”,后跟硬盘的驱动器号。 当 Hyper-V 虚拟 IDE 控制器正确拒绝禁用磁盘缓存的请求时,将生成此警告消息。 但是,Active Directory 请求在不缓存的情况下完成所有数据库更新,Hyper-V 存储子系统会确保这一点,以防止因电源故障或其他意外重新启动而导致数据丢失。
更新信息
Windows Server 2012 在基于 Windows Server 2012 的 Hyper-V 主机上安装更新汇总2855336。
Windows Server 2008 R2 在基于 Windows Server 2008 R2 的 Hyper-V 主机上安装更新2853952。 此外,如果来宾运行 Windows Server 2008 R2 或 Windows 7,请在来宾上安装更新2853952。
此更新可从 Windows 更新 和 Microsoft 下载中心获取。
| 操作系统 | 更新 |
|---|---|
| 所有受支持的基于 x86 的 Windows7 版本 |
立即下载更新包。 |
| 所有受支持的基于 x64 的 Windows7 版本 |
立即下载更新包。 |
| 所有受支持的基于 x64 的 Windows Server 2008 R2 版本 |
立即下载更新包。 |
| 所有受支持的基于 IA64 的 Windows Server 2008 R2 版本 |
立即下载更新包。 |
有关如何下载 Microsoft 支持文件的更多信息,请单击以下文章编号,以查看 Microsoft 知识库中相应的文章:
119591 如何从联机服务获取 Microsoft 支持文件
Microsoft 已对该文件进行病毒扫描。 Microsoft 使用的是文件发布时可以获得的最新病毒检测软件。 该文件存储在安全性得到增强的服务器上,以防止对文件进行未经授权的更改。
重启要求更新需要重启才能解决此问题。
文件信息
此更新的全球版本将安装具有下表所列属性的文件。 这些文件的日期和时间使用协调世界时 (UTC) 列出。 这些文件在本地计算机上显示的日期和时间是本地时间再加上当前夏令时 (DST) 偏差。 此外,如果对这些文件执行某些操作,日期和时间可能会更改。
Windows 7 和 Windows Server 2008 R2 文件信息说明
- 清单文件 (.manifest) 和为每个环境安装的 MUM 文件 (.mum) 分别在“其他文件信息”部分中 列出 。 MUM 文件、MANIFEST 文件以及关联的安全目录 (.cat) 文件对于维护更新组件的状态非常重要。 安全目录文件(未列出属性)均使用 Microsoft 数字签名进行签名。
对于所有受支持的基于 x86 的版本 Windows 7
| 文件名 | 文件版本 | 文件大小 | 日期 | 时间 | 平台 |
|---|---|---|---|---|---|
| Aliide.sys | 1.2.0.0 | 14,400 | 2009 年 7 月 14 日 | 01:26 | x86 |
| Amdide.sys | 6.1.7600.16385 | 14,912 | 2009 年 7 月 14 日 | 01:26 | x86 |
| Atapi.sys | 6.1.7600.16385 | 21,584 | 2009 年 7 月 14 日 | 01:26 | x86 |
| Ataport.sys | 6.1.7601.18231 | 133,056 | 2013 年 8 月 5 日 | 05/27/2020 | x86 |
| Cmdide.sys | 2.0.7.0 | 15,952 | 2009 年 7 月 14 日 | 01:26 | x86 |
| Intelide.sys | 6.1.7600.16385 | 15,424 | 2009 年 7 月 14 日 | 20:01 | x86 |
| Msahci.sys | 6.1.7601.17514 | 28,032 | 2010 年 11 月 20 日 | 12:30 | x86 |
| Pciide.sys | 6.1.7600.16385 | 12,368 | 2009 年 7 月 14 日 | 20:01 | x86 |
| Pciidex.sys | 6.1.7600.16385 | 42,560 | 2009 年 7 月 14 日 | 19:01 | x86 |
| Viaide.sys | 6.0.6000.170 | 16,976 | 2009 年 7 月 14 日 | 19:01 | x86 |
| Aliide.sys | 1.2.0.0 | 14,400 | 2009 年 7 月 14 日 | 01:26 | x86 |
| Amdide.sys | 6.1.7600.16385 | 14,912 | 2009 年 7 月 14 日 | 01:26 | x86 |
| Atapi.sys | 6.1.7600.16385 | 21,584 | 2009 年 7 月 14 日 | 01:26 | x86 |
| Ataport.sys | 6.1.7601.22414 | 133,056 | 2013 年 8 月 5 日 | 08:59 | x86 |
| Cmdide.sys | 2.0.7.0 | 15,952 | 2009 年 7 月 14 日 | 01:26 | x86 |
| Intelide.sys | 6.1.7600.16385 | 15,424 | 2009 年 7 月 14 日 | 20:01 | x86 |
| Msahci.sys | 6.1.7601.17514 | 28,032 | 2010 年 11 月 20 日 | 12:30 | x86 |
| Pciide.sys | 6.1.7600.16385 | 12,368 | 2009 年 7 月 14 日 | 20:01 | x86 |
| Pciidex.sys | 6.1.7600.16385 | 42,560 | 2009 年 7 月 14 日 | 19:01 | x86 |
| Viaide.sys | 6.0.6000.170 | 16,976 | 2009 年 7 月 14 日 | 19:01 | x86 |
对于所有受支持的基于 x64 的 Windows 7 和 Windows Server 2008 R2 版本
| 文件名 | 文件版本 | 文件大小 | 日期 | 时间 | 平台 |
|---|---|---|---|---|---|
| Hvax64.exe | 6.1.7601.22414 | 606,720 | 2013 年 8 月 5 日 | 14:07 | x64 |
| Hvboot.sys | 6.1.7601.22414 | 118,208 | 2013 年 8 月 5 日 | 08:33 | x64 |
| Hvix64.exe | 6.1.7601.22414 | 635,392 | 2013 年 8 月 5 日 | 14:07 | x64 |
| Vmwp.exe | 6.1.7601.18231 | 3,682,816 | 2013 年 8 月 5 日 | 1,801 | x64 |
| Vmwp.exe | 6.1.7601.22414 | 3,682,816 | 2013 年 8 月 5 日 | 07:28 | x64 |
| Aliide.sys | 1.2.0.0 | 15,440 | 2009 年 7 月 14 日 | 01:52 | x64 |
| Amdide.sys | 6.1.7600.16385 | 15,440 | 2009 年 7 月 14 日 | 01:52 | x64 |
| Atapi.sys | 6.1.7600.16385 | 24,128 | 2009 年 7 月 14 日 | 01:52 | x64 |
| Ataport.sys | 6.1.7601.18231 | 155,584 | 2013 年 8 月 5 日 | 02:25 | x64 |
| Cmdide.sys | 2.0.7.0 | 17,488 | 2009 年 7 月 14 日 | 01:52 | x64 |
| Intelide.sys | 6.1.7600.16385 | 16,960 | 2009 年 7 月 14 日 | 05/27/2020 | x64 |
| Msahci.sys | 6.1.7601.17514 | 31,104 | 2010 年 11 月 20 日 | 13:33 | x64 |
| Pciide.sys | 6.1.7600.16385 | 12,352 | 2009 年 7 月 14 日 | 05/27/2020 | x64 |
| Pciidex.sys | 6.1.7600.16385 | 48,720 | 2009 年 7 月 14 日 | 05/27/2020 | x64 |
| Viaide.sys | 6.0.6000.170 | 17,488 | 2009 年 7 月 14 日 | 05/27/2020 | x64 |
| Aliide.sys | 1.2.0.0 | 15,440 | 2009 年 7 月 14 日 | 01:52 | x64 |
| Amdide.sys | 6.1.7600.16385 | 15,440 | 2009 年 7 月 14 日 | 01:52 | x64 |
| Atapi.sys | 6.1.7600.16385 | 24,128 | 2009 年 7 月 14 日 | 01:52 | x64 |
| Ataport.sys | 6.1.7601.22414 | 155,584 | 2013 年 8 月 5 日 | 08:33 | x64 |
| Cmdide.sys | 2.0.7.0 | 17,488 | 2009 年 7 月 14 日 | 01:52 | x64 |
| Intelide.sys | 6.1.7600.16385 | 16,960 | 2009 年 7 月 14 日 | 05/27/2020 | x64 |
| Msahci.sys | 6.1.7601.17514 | 31,104 | 2010 年 11 月 20 日 | 13:33 | x64 |
| Pciide.sys | 6.1.7600.16385 | 12,352 | 2009 年 7 月 14 日 | 05/27/2020 | x64 |
| Pciidex.sys | 6.1.7600.16385 | 48,720 | 2009 年 7 月 14 日 | 05/27/2020 | x64 |
| Viaide.sys | 6.0.6000.170 | 17,488 | 2009 年 7 月 14 日 | 05/27/2020 | x64 |
对于所有受支持的基于 IA-64 的 Windows Server 2008 R2 版本
| 文件名 | 文件版本 | 文件大小 | 日期 | 时间 | 平台 |
|---|---|---|---|---|---|
| Aliide.sys | 1.2.0.0 | 19,024 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Atapi.sys | 6.1.7600.16385 | 44,624 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Ataport.sys | 6.1.7601.18231 | 372,160 | 2013 年 8 月 5 日 | 01:35 | IA-64 |
| Cmdide.sys | 2.0.7.0 | 26,704 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Intelide.sys | 6.1.7600.16385 | 21,072 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Msahci.sys | 6.1.7601.17514 | 72,064 | 2010 年 11 月 20 日 | 10:33 | IA-64 |
| Pciide.sys | 6.1.7600.16385 | 15,952 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Pciidex.sys | 6.1.7600.16385 | 115,792 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Viaide.sys | 6.0.6000.170 | 27,712 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Aliide.sys | 1.2.0.0 | 19,024 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Atapi.sys | 6.1.7600.16385 | 44,624 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Ataport.sys | 6.1.7601.22414 | 372,160 | 2013 年 8 月 5 日 | 07:44 | IA-64 |
| Cmdide.sys | 2.0.7.0 | 26,704 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Intelide.sys | 6.1.7600.16385 | 21,072 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Msahci.sys | 6.1.7601.17514 | 72,064 | 2010 年 11 月 20 日 | 10:33 | IA-64 |
| Pciide.sys | 6.1.7600.16385 | 15,952 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Pciidex.sys | 6.1.7600.16385 | 115,792 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
| Viaide.sys | 6.0.6000.170 | 27,712 | 2009 年 7 月 14 日 | 05/27/2020 | IA-64 |
Windows 7 和 Windows Server 2008 R2 的其他文件信息
所有受支持的基于 x86 的 Windows 7 版本的其他文件
| 文件属性 | 值 |
|---|---|
| 文件名 | X86_mshdc.inf_31bf3856ad364e35_6.1.7601.18231_none_df26d4d57fdef5b0.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 6,632 |
| 日期 (UTC) | 2013 年 8 月 6 日 |
| 时间 (UTC) | 19:46 |
| 平台 | 不适用 |
| 文件名 | X86_mshdc.inf_31bf3856ad364e35_6.1.7601.22414_none_dfc9143c98e9a6c4.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 6,632 |
| 日期 (UTC) | 2013 年 8 月 6 日 |
| 时间 (UTC) | 19:46 |
| 平台 | 不适用 |
所有受支持的基于 x64 的 Windows 7 版本和 Windows Server 2008 R2 的其他文件
| 文件属性 | 值 |
|---|---|
| 文件名 | Amd64_453b23b4799e3d18f0b6f5e824c33719_31bf3856ad364e35_6.1.7601.22414_none_f4f4b5b1e2c8c32c.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 1,055 |
| 日期 (UTC) | 2013 年 8 月 6 日 |
| 时间 (UTC) | 19:42 |
| 平台 | 不适用 |
| 文件名 | Amd64_f3bc7e4abef692ac454474ea9ddd5d7c_31bf3856ad364e35_6.1.7601.18231_none_f7049554b2792c32.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 703 |
| 日期 (UTC) | 2013 年 8 月 6 日 |
| 时间 (UTC) | 19:42 |
| 平台 | 不适用 |
| 文件名 | Amd64_microsoft-hyper-v-drivers-hypervisor_31bf3856ad364e35_6.1.7601.22414_none_8f00db0795429115.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 4,163 |
| 日期 (UTC) | 2013 年 8 月 5 日 |
| 时间 (UTC) | 1,009 |
| 平台 | 不适用 |
| 文件名 | Amd64_microsoft-hyper-v-vstack-vmwp_31bf3856ad364e35_6.1.7601.18231_none_934dd685767b40bb.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 276,830 |
| 日期 (UTC) | 2013 年 8 月 5 日 |
| 时间 (UTC) | 02:46 |
| 平台 | 不适用 |
| 文件名 | Amd64_microsoft-hyper-v-vstack-vmwp_31bf3856ad364e35_6.1.7601.22414_none_93f015ec8f85f1cf.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 276,830 |
| 日期 (UTC) | 2013 年 8 月 5 日 |
| 时间 (UTC) | 09:11 |
| 平台 | 不适用 |
| 文件名 | Amd64_mshdc.inf_31bf3856ad364e35_6.1.7601.18231_none_3b457059383c66e6.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 6,636 |
| 日期 (UTC) | 2013 年 8 月 6 日 |
| 时间 (UTC) | 19:52 |
| 平台 | 不适用 |
| 文件名 | Amd64_mshdc.inf_31bf3856ad364e35_6.1.7601.22414_none_3be7afc0514717fa.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 6,636 |
| 日期 (UTC) | 2013 年 8 月 6 日 |
| 时间 (UTC) | 19:52 |
| 平台 | 不适用 |
所有受支持的基于 IA-64 的 Windows Server 2008 R2 版本的其他文件
| 文件属性 | 值 |
|---|---|
| 文件名 | Ia64_mshdc.inf_31bf3856ad364e35_6.1.7601.18231_none_df2878cb7fdcfeac.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 6,112 |
| 日期 (UTC) | 2013 年 8 月 6 日 |
| 时间 (UTC) | 19:42 |
| 平台 | 不适用 |
| 文件名 | Ia64_mshdc.inf_31bf3856ad364e35_6.1.7601.22414_none_dfcab83298e7afc0.manifest |
| 文件版本 | 不适用 |
| 文件大小 | 6,112 |
| 日期 (UTC) | 2013 年 8 月 6 日 |
| 时间 (UTC) | 19:42 |
| 平台 | 不适用 |
状态
Microsoft 已确认在 "适用于" 部分中所列的 Microsoft 产品中存在问题。
详细信息
虚拟化堆栈中存在各种缓存层,它们会影响虚拟机上运行的应用程序的一致性语义。 有关此内容的详细信息,请参阅 KB 2801713 。
虚拟硬盘向启用了写入缓存的来宾操作系统报告,磁盘拒绝来宾操作系统发出的禁用写入缓存的请求。 出于以下原因,此行为是必需的:
基础存储可能有一个无法禁用的始终打开的写入缓存。 这是因为虚拟磁盘可能会迁移到同一主机上的不同磁盘, (实时存储迁移) ,或者 (实时迁移) 的其他主机。
Hyper-V 无法假定在同一磁盘上运行的所有虚拟机具有相同的磁盘缓存设置。
在电源故障中需要数据完整性语义的应用程序必须确保将写入提交到非易失性存储。 实现此目的的一种方法是禁用磁盘缓存,以便在报告成功之前将所有写入提交到硬盘。 如果禁用磁盘缓存的请求被拒绝,则应用程序必须采取其他步骤来确保一致性。
安装更新之前,当 Active Directory 尝试禁用磁盘缓存时,Hyper-V 会错误地报告此操作已成功。 然后,Active Directory 将在假设未发生缓存的情况下执行文件操作,即使发生缓存也是如此。
安装此更新后,Active Directory 将尝试禁用磁盘缓存,Hyper-V 将正确报告无法执行此操作。 然后,Active Directory 将启用 FUA (强制单元访问) ,以确保数据未缓存。
当 Active Directory 尝试禁用磁盘缓存时,会记录 事件 ID 1539 。
参考资料
有关软件更新术语的更多信息,请单击下面的文章编号以查看 Microsoft 知识库中的相应文章:
824684 用于描述软件更新Microsoft标准术语的说明