笔者由于不堪忍受之前8G内存太小了跑个edge和wsl就爆了的困扰,于是换了个新的surface pro7+,并且升级到win11了。本想着直接导入导出之前的wsl就省得再配置了,结果又有问题……
1-win11的wsl的NAT网络失效
把NAT换成镜像Mirrored就好了
2-使用WSL的配置文件方法
碎碎念:原因是换了用户连自己的python都跑不起来,因为之前的wsl都配置的在默认普通用户上,换了win11怎么就直接用root用户了(而且之前装的vscode插件也都没了,但是换回来就又好了)
下面我以Ubuntu_New为wsl的名,以username为普通用户作为例子
-
首先,以root用户身份进入WSL:
在powershell里
wsl -d Ubuntu_New
-
在WSL中,创建或编辑
/etc/wsl.conf
文件:wsl的shell中
sudo nano /etc/wsl.conf
-
添加以下内容:
[user] default=cq
-
保存文件并退出编辑器(在nano中,按Ctrl+X,然后按Y,最后按Enter)
-
完全重启WSL:
- 退出WSL:
exit
- 在Windows PowerShell中执行:
powershell
wsl --shutdown
- 然后重新启动WSL
- 退出WSL:
3-删除之前用错的root用户的插件
如果你想删除root用户的VSCode插件,你需要找到VSCode在root用户目录下的扩展文件夹并删除相应的插件。以下是详细步骤:
-
首先,以root用户身份进入WSL:
sudo su
-
找到VSCode扩展目录。VSCode的扩展通常位于以下位置:
ls -la /root/.vscode-server/
-
你应该会看到一个或多个以
extensions
或bin
开头的文件夹。扩展通常在extensions
文件夹中:ls -la /root/.vscode-server/extensions/
-
删除你想要删除的插件文件夹。例如,如果你想删除Python插件:
rm -rf /root/.vscode-server/extensions/ms-python.python-* #或者直接删除全部,删除文件夹 rm -rf /root/.vscode-server/extensions
-
退出root用户:
exit