无法挂载 VHDX 文件

无法挂载 VHDX 文件

我对 Windows 10 PC 进行了映像备份(使用内置磁盘映像备份功能,称为 Windows 7 备份,带有系统映像)。

后来我尝试挂载生成的 VHDX 文件,以便从备份中访问一些文件。

这在过去是有效的(不是针对这个特定的备份,而是一般情况下)。有很多网站描述了这个过程,比如这个

但这次却不起作用。

如果我双击文件服务器(Windows 2012 R2 Standard)上的 VHDX 文件(最大的文件,通常会创建多个,其中最大的文件实际上具有数据分区),则会收到此错误:

无法挂载文件

确保该文件位于 NTFS 卷中,而不是压缩文件夹或卷中。

如果我通过网络共享包含该文件的文件夹并从 Windows 8.1 Pro PC 访问它(从现在开始我将其称为“客户端”)并双击 VHDX 文件,我会收到相同的错误。

如果我尝试“附加 VHD”选项磁盘管理在同一个文件上,我得到:

虚拟磁盘管理器

由于虚拟磁盘系统限制,无法完成请求的操作。在 NTFS 上,虚拟硬盘文件必须未压缩且未加密。在 ReFS 上,虚拟硬盘文件不得设置完整性位。

如果我在服务器上本地尝试或者通过客户端上的网络尝试,就会出现同样的错误。

如果我尝试在 Windows 10 Pro 客户端上通过网络访问 VHDX 文件,则出现错误:

无法挂载文件

您没有权限挂载该文件。

但是如果我将文件复制到本地磁盘(在 win10 PC 上),它就可以工作。

它还可以处理 Windows 8.1 PC 的旧备份。它们适用于所有场景(本地访问或通过网络)。

知道发生什么事了吗?

回顾一下:

  • 无论如何都无法安装 Windows 10 备份中的 VHDX 文件
  • 在所有情况下都可以安装其他 VHDX 文件(主要来自 Windows 8.1 备份)

编辑:

部分解决方案:

将非工作的 VHDX 文件复制到本地 HDD/SSD 使其可安装:

  • 双击它
  • 完成(它分配一个驱动器号并将其显示在资源管理器窗口中)
  • 除非它的驱动器号与当前使用的驱动器号重叠,如果它是一个系统驱动器备份并且想要使用 C: 驱动器号,就会发生这种情况;在这种情况下会弹出一个错误:

无法挂载文件

磁盘映像未初始化、包含无法识别的分区或包含未分配驱动器号的卷。请使用磁盘管理管理单元确保磁盘、分区和卷处于可用状态。

  • 在这种情况下:打开磁盘管理并为已挂载的 VHDX 分区分配(不同的)驱动器号

答案1

这是错误对话框中的答案:

在 ReFS 上,虚拟硬盘文件不能设置完整性位。

这些文件位于 ReFS 卷上,出于某种原因,我遇到问题的 VHDX 文件上设置了完整性位。其他 VHDX 文件没有设置该位。

修复:

在 PowerShell 中运行:

Get-Item .\foo.vhdx | Set-FileIntegrity -Enable 0

去检查:

Get-Item .\foo.vhdx | Get-FileIntegrity

此后,该文件可以在本地挂载(目前我无法测试远程访问)。


替代是使用 7-zip 之类的工具(自 21.06 版起支持 VHDX)打开 VHDX 文件,该工具不关心此类文件系统标志。它允许浏览、打开或提取文件。与挂载不同,但对于大多数用例来说已经足够了。

答案2

使用 Windows 10 控制面板创建系统映像 - 备份和还原(Windows 7)- 选择创建系统映像...备份当前驱动器。我去获取一个旧文件 - 磁盘管理器 - 附加 VHDX 卷将附加但不分配驱动器号,并且选项呈灰色。

解决方案 - A) 在使用磁盘管理器之前,请转到存储备份的相应驱动器,然后双击要查看的每个 VHDX 文件。Windows 将向您显示错误消息Windows 错误消息 - 无法挂载文件 B)然后进入磁盘管理器,您将看到已安装的卷,您可以右键单击并分配一个新的驱动器号。

虽然并不完美,但它完成了工作,而且我在任何地方都找不到简单的解决方案。

相关内容