适用于:✔️ Windows VM
原始 KB 数: 4010129
本文提供了 Azure VM 无法从错误代码0xc000000e开始的问题的解决方案。
现象
Windows 不会启动。 相反,系统会生成以下错误:
文件:\Windows\system32\winload.exe
状态:0xC000000E
信息:无法加载应用程序或操作系统,因为缺少所需的文件或包含错误。
原因
如果在启动配置数据中指定一个不存在的设备,则会发生此问题。
解决方法
提示
如果 VM 有最近的备份,可以尝试 从备份 还原 VM 以修复启动问题。
要解决该问题,请执行以下步骤:
第 1 步:将 VM 的 OS 磁盘作为数据磁盘附加到另一 VM
- 删除虚拟机(VM)。 执行此操作时,请确保选择“ 保留磁盘 ”选项。
- 将 OS 磁盘作为数据磁盘附加到另一个 VM(故障排除 VM)。 有关详细信息,请参阅如何在 Azure 门户中将数据磁盘附加到 Windows VM。
- 连接到故障排除 VM。 转到“计算机管理”>“磁盘管理”。 确保 OS 磁盘处于联机状态,并且其分区已分配驱动器号。
- 标识启动分区和 Windows 分区。 如果 OS 磁盘只包含一个分区,此分区即为启动分区和 Windows 分区。
如果 OS 磁盘包含多个分区,可以通过查看分区中的文件夹来标识它们:
Windows 分区包含名为“Windows”的文件夹,比其他分区大。
启动分区包含名为“Boot”的文件夹。默认情况下,此文件夹处于隐藏状态。 若要查看该文件夹,必须显示已隐藏的文件和文件夹,并禁用“隐藏受保护的操作系统文件(推荐)”选项。 启动分区通常为 300 MB~500 MB。
步骤 2:修复启动配置数据
以管理员身份运行以下命令行,并记录 Windows 启动加载程序(不是 Windows 引导管理器)的标识符。 标识符是由 32 个字符构成的代码,类似于:xxxxxxxx-xxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx。 下一步骤要用到此标识符。
bcdedit /store <Boot partition>:\boot\bcd /enum /v
运行以下命令行修复启动配置数据。 必须将以下占位符替换为实际值:
注意
此步骤适用于大多数启动配置数据损坏问题。 即使看到 设备和 OSDevice 指向正确的分区,也需要执行此步骤。
<Windows 分区> 是包含名为“Windows”的文件夹的分区。
<启动分区> 是包含名为“Boot”的隐藏系统文件夹的分区。
<标识符> 是上一步中找到的 Windows 启动加载程序标识符。
bcdedit /store <Boot partition>:\boot\bcd /set {bootmgr} device partition=<boot partition>: bcdedit /store <Boot partition>:\boot\bcd /set {bootmgr} integrityservices enable bcdedit /store <Boot partition>:\boot\bcd /set {<Identifier>} device partition=<Windows partition>: bcdedit /store <Boot partition>:\boot\bcd /set {<Identifier>} integrityservices enable bcdedit /store <Boot partition>:\boot\bcd /set {<identifier>} recoveryenabled Off bcdedit /store <Boot partition>:\boot\bcd /set {<identifier>} osdevice partition=<Windows partition>: bcdedit /store <Boot partition>:\boot\bcd /set {<identifier>} bootstatuspolicy IgnoreAllFailures
从故障排除 VM 中分离已修复的 OS 磁盘。 然后,从 OS 磁盘创建新的 VM。
联系我们寻求帮助
如果你有任何疑问或需要帮助,请创建支持请求或联系 Azure 社区支持。 你还可以将产品反馈提交到 Azure 反馈社区。