WSL特点
WSL1本质上还是一个虚拟机,性能不足还有诸多Bug,一开始并没有引起太大的风波,随着Windows版本迭代更新,拥有完整Linux内核的WSL2到来了。WSL2并非传统VM虚拟机,能够直接调用GPU,并且有专用的CUDA版本,虽然性能比不上linux双系统,但是其低安装成本 和 windows与linux共存的方式成为了许多小白和学生学习linux环境的不二之选
对比 WSL 1 ,WSL2优化了 文件系统的性能,这也是局限WSL1的地方
WSL安装
首先要确定Win10版本大于1903或内部版本大于18362或者升级到Win11
开启Windows子系统功能,在powershell管理员中运行如下命令
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
在命令行中运行 wsl
命令就可以查看相关命令用法,已Ubuntu20.04为例
wsl --set-default-version 2
wsl --install -d ubuntu
存储位置迁移
默认的存储位置是C盘,建议放到别的地方
关闭正在运行的WSL
wsl --shutdown
将wsl硬盘文件导出
wsl --export Ubuntu D:\wsl\export.tar
注销原有的wsl,此时c盘的文件会自动删除
wsl --unregister Ubuntu
然后将导出的文件重新导入并指定存储路径
wsl --import Ubuntu D:\wsl\ D:\wsl\export.tar --version 2
重新设置默认登录用户
ubuntu config --default-user xxxx
开发环境支持
WSLG 原生支持GUI程序,不需要像旧版一样设置xserver转发画面 实测OpenCV程序能直接显示 支持显卡调用和CUDA加速,需要注意的是,WSL内不需要另外安装显卡驱动,宿主的Windows机驱动是唯一需要安装的显卡驱动,在wsl内部调用nvidia-smi查看支持的cuda,安装cuda不能超过这个版本,其次cuda有wsl专用的版本...
其余加分项
内部能直接访问windows的文件 /mnt/
目录下对应windows根目录,运行 explorer.exe .
能直接在当前目录下打开explorer文件浏览器。 如果windows安装了vscode ,在wsl内运行 code .
会直接下载插件并开启宿主vscode远程连接
其他
我编写了相关文档以记录一些使用技巧