Windows更新导致WSL崩溃

背景

某天Windows10自动升级并重启了系统,升级完成后打开WSL出现了错误:

无法将磁盘“C:\Program Files\WSL\system.vhd”附加到 WSL2: 系统找不到指定的文件。
错误代码: Wsl/Service/CreateInstance/CreateVm/MountDisk/HCS/ERROR_FILE_NOT_FOUND
Press any key to continue...

通过查阅资料 [1] 了解到这是WSL的BUG导致的,在Windows升级的时候,有概率会导致WSL文件被误删除

比较好的解决办法有两个:

  1. 在其他电脑上把 C:\Program Files\WSL\system.vhd 复制过来。
    这个办法最简单,也最友好,前提是附近有其他Windows电脑。
  2. 使用已安装的数据进行重装恢复
    • 2.1、找到WSL上已安装的系统所在的文件夹 [2]
      一般在 C:\Users\{User}\AppData\Local\Packages\{Distribution}\LocalState,例如:D:\Users\Default\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu24.04LTS_79rhkp1fndgsc\LocalState
    • 2.2、把文件夹中的 *.vhdx(例如:ext4.vhdx)复制到其他盘用来做备份,后面恢复会用到
    • 2.3、在 github.com/microsoft/WSL/releases 下载最新的wsl,并安装
    • 2.4、如果经过上述步骤已经恢复正常,则无需后续步骤,否则:
      • 2.4.1、停止WSL
      • 2.4.2、卸载已安装系统
      • 2.4.3、重新安装刚才卸载的系统,安装成功以后再停止
      • 2.4.4、把刚才备份的 ext4.vhdx 复制到新安装系统的 C:\Users\{User}\AppData\Local\Packages\{Distribution}\LocalState 中,覆盖掉已有文件



  1. WSL2. Can no longer find 'C:\Program Files\WSL\system.vhd' Jan 24, 2024 ↩︎

  2. How to locate the .vhdx file and disk path for your Linux distribution 02/05/2025 ↩︎

posted @ 2025-08-06 17:37  qingchuwudi  阅读(389)  评论(0)    收藏  举报