wsl的相关问题记录和解决
问题一:cmd命令窗口输入wsl
后没有响应,会卡住,类似如图
排查:
- 输入
wsl -l -v
看是否有东西输出;我的电脑没有东西输出,依旧是卡住;有内容请重启试试 - 从开始菜单打开,点击ubuntu,打开看看子系统能否正常运行:
如果不能正常运行,请打开 开始菜单—>设置—>应用—>选择你的子系统高级选项
请点击修复或者重置,然后重启 - 按键盘Win+R打开"运行",输入cmd然后按Ctrl+Shift+回车,以管理员身份打开命令提示符;在打开的命令提示符窗口中粘贴运行下面的命令:
netsh int ip resetnetsh winsock reset
问题解决
以上方法均没有解决我的问题,我的问题是由于windows系统升级后导致的;应该是版本不对应的问题。我将ubuntu 卸载后重装,解决
重装后新的问题
重装后,输入wsl,报错:
Processing fstab with mount -a failed.
<3>WSL (11) ERROR: CreateProcessEntryCommon:370: getpwuid(0) failed 2
<3>WSL (11) ERROR: CreateProcessEntryCommon:374: getpwuid(0) failed 2
<3>WSL (11) ERROR: CreateProcessEntryCommon:577: execvpe /bin/sh failed 2
<3>WSL (11) ERROR: CreateProcessEntryCommon:586: Create process not expected to return
这是因为没有指定返回的wsl
解决
设置默认 WSL 版本
wsl --set-default-version <Version>
我这里是
wsl --set-default Ubuntu-22.04
然后执行wsl ,成功