如何释放另一个进程使用的锁定 Hyper-V VHD?

如何释放另一个进程使用的锁定 Hyper-V VHD?

当我启动虚拟机时出现此错误

Microsoft 模拟 IDE 控制器错误(实例 ID 83F863B-8DCA-9EDA-2CA8B33039B4):无法开机,错误为“该进程无法访问该文件,因为该文件正在被另一个进程使用。”。

它出什么问题了?

答案1

Windows 还可能锁定 VHD 文件。我双击 VHD 时就遇到了这种情况,这会导致最新版本的 Windows 像打开文件夹一样打开它。但是,系统似乎会锁定该文件,从而阻止 Hyper-V 使用它来启动虚拟机。重新启动解决了该问题。

答案2

虽然上面提供的一些简单答案可能对某些用户有用,但它们都没有解决我的问题。我的问题是,我的虚拟机的 Hyper-V .vhdx 文件被锁定,但既没有出现在文件资源管理器中作为可弹出磁盘,也没有出现在管理工具磁盘管理组件中。请注意,我的 VM 是在启用 Hyper-V 的 Windows 10 中的 WSL2 下运行的 Debian Linux 衍生产品。

那么它一开始是怎么被锁定的呢?我按照网上一篇文章的说明操作,文章说我只需双击 .vhdx 文件就可以轻松查看文件。在虚拟机暂时关闭的情况下,我照做了,但收到一条错误消息(关于“无法读取文件”的内容)。之后,尝试使用 Hyper-V 连接到我的虚拟机时,出现错误消息“该进程无法访问该文件,因为它正在被另一个进程使用”。那么如何解锁呢?

在搜索了网络并尝试了各种方法后,我终于找到了一种可以使用 Powershell 的方法。以下是简短的步骤:

  1. 搜索 Powershell,然后以管理员身份运行。

  2. 在命令提示符下输入: get-physicaldisk

就我而言,结果是:

Number FriendlyName           SerialNumber    MediaType   CanPool OperationalStatus HealthStatus Usage            Size
------ ------------           ------------    ---------   ------- ----------------- ------------ -----            ----
1      SanDisk Ultra II 480GB 16xxxxxxxx96    SSD         False   OK                Healthy      Auto-Select 447.13 GB
0      WDC WD1001FALS-00E3A0  WD-WCATxxxxxxx9 Unspecified True    OK                Healthy      Auto-Select 931.51 GB
2      Msft Virtual Disk                      SSD         False   OK                Healthy      Auto-Select     32 GB

如您所见,有一个名为“Msft Virtual Disk”的条目,它代表作为虚拟磁盘安装的 VM 文件。

  1. 要卸载虚拟磁盘,请在命令提示符下输入:
   Dismount-DiskImage -ImagePath "C:\Users\Public\Documents\Hyper-V\Virtual hard disks\Name-Of-Your-Virtual-Machine.vhdx"
  1. 重新输入命令: get-physicaldisk 验证虚拟磁盘是否已卸载。

之后,虚拟磁盘被卸载,我能够再次成功从 Hyper-V 连接并加载我的虚拟机。

我希望这些信息能对某人有所帮助!

答案3

几天前我遇到了同样的问题:

Microsoft 模拟 IDE 控制器错误(实例 ID 83F863B-8DCA-9EDA-2CA8B33039B4):无法开机,错误为“该进程无法访问该文件,因为该文件正在被另一个进程使用...”

我尝试删除 USB 驱动程序和 IDE - CD-ROM。再次重新启动权限,但问题仍未解决。

我必须创建一个新的虚拟机并连接硬盘。它解决了这个问题。

希望有所帮助。

答案4

非常简单。只需进入 vm 设置。然后在左侧窗格中,IDE 控制器 1 下方单击 DVD 驱动器,然后选择无。大功告成。

相关内容