MENU

WSL - 年轻人的第一个Linux环境

May 11, 2022 • Read: 60 • 开发

WSL特点

微信截图_20220503204804.png

WSL1本质上还是一个虚拟机,性能不足还有诸多Bug,一开始并没有引起太大的风波,随着Windows版本迭代更新,拥有完整Linux内核的WSL2到来了。WSL2并非传统VM虚拟机,能够直接调用GPU,并且有专用的CUDA版本,虽然性能比不上linux双系统,但是其低安装成本 和 windows与linux共存的方式成为了许多小白和学生学习linux环境的不二之选

对比 WSL 1 ,WSL2优化了 文件系统的性能,这也是局限WSL1的地方

WSL安装

安装 WSL参考文档 | Microsoft Docs

首先要确定Win10版本大于1903或内部版本大于18362或者升级到Win11

开启Windows子系统功能,在powershell管理员中运行如下命令
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远程连接