WSL2无法启动:占位程序接收到错误数据

提示:占位程序接收到错误数据

环境:wsl2和wsl1都有,都是自己用rootfs.tar.gz手动安装的,wsl1正常启动,wsl2无法启动

解决方法:

  1. 网络上什么DISM检查系统完整性:我试了没用

按 “Windows 徽标键+X”,启动 “Windows PowerShell (管理员)”,依次执行以下命令:

Dism /Online /Cleanup-Image /ScanHealth

Dism /Online /Cleanup-Image /CheckHealth

DISM /Online /Cleanup-image /RestoreHealth

sfc /SCANNOW

执行完毕后重启设备,查看问题是否解决。

  1. 重装wsl:我没有试过,因为我的WSL1是正常使用的,不想重新安装。

首先我从设置-应用中卸载了,所有和WSL相关的软件,包括Ubuntu发行版,然后重启电脑
利用管理员模式CMD,输入“wsl --update"更新内核,然后”wsl --list --online“列出可下载版本,最后”wsl --install --d Ubuntu-20.04"下载发行版,完全安全好后提示我要加一个unix user name,这里我在CMD中输入“netsh winsock reset”,重启系统,再开机就可以正常进入Ubuntu了

  1. 我自己的解决方法,有效

偶然用everything搜索了一下本机上的所有ext4.vhdx文件,发现在C:\Users\用户名\AppData\Local\Packages\MicrosoftCorporationII.WindowsSubsystemforLinux_8wekyb3d8bbwe\LocalState里有个二点多G的ext4.vhdx,我之前从来没有用过wsl商店的镜像,都是自己从GitHub和MSdoc手动下载的镜像便携安装的子系统。

删掉这个vhdx文件后居然能正常启动wsl2了。

应该是和删掉所有wsl重新安装一个效果。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐