1. 简介
2. wsl2
wsl是在windows中的Linux子系统,相较于传统虚拟机性能更高,资源占用更少,使用更方便。
2.1 wsl1与wsl2的区别
简单来说,wsl1运行时使用一个翻译层将Linux系统调用翻译成windows的系统调用,wsl2有一个实际的Linux内核运行在Hpyer-V环境之上。
wsl2的优势:性能更优,功能更完善,更加接近实际的Linux体验。
wsl2的劣势:体现在网络配置与跨文件系统io方面。
微软官方对比
WSL 和 WSL2 简单对比
Windows 10 May 2020 中 WSL 与 WSL2 的性能比较
2.2 wsl2的安装步骤
步骤中的命令使用管理员权限的PowerShell执行
步骤1 启用适用于 Linux 的 Windows 子系统
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
步骤二 更新到wsl2
- 对于 x64 系统:版本 1903 或更高版本,采用内部版本 18362 或更高版本。
- 对于 ARM64 系统:版本 2004 或更高版本,采用内部版本 19041 或更高版本。
步骤三 启用虚拟机功能
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
步骤四 下载安装Linux内核
点击下载
步骤五 将wsl2设为默认
wsl --set-default-version 2
微软官方安装文档
步骤六 微软商店中安装Ubuntu发行版
Ubuntu 20.04 LTS
步骤七 启动安装的发行版完成配置
3. vscode与Terminal
工作总不能一直使用vi编辑器来写代码吧,总不能一直用丑丑的单窗口终端来运行命令吧,所以还是要接入宇宙最强编辑器vscode,以及微软为wsl量身打造的Terminal。
3.1 Terminal
3.1.1 常用配置项
点击设置打开json格式的配置文件
{
"defaultProfile": 复制你的guid, //设置默认启动的Profile,在profiles->list中查看
"initialCols": 70, //终端窗口初始宽度
"initialRows": 20, //终端窗口初始高度
"profiles":
{
"defaults":
{
// "launchMode":"default",
"fontSize":16,
"colorScheme": "One Half Dark",
"startingDirectory": "//wsl$/Ubuntu-20.04/home/user" //设置启动时的默认目录,wsl的目录需要以//wsl$起始
// Put settings here that you want to apply to all profiles.
},
...
}
}
3.2 vscode
3.2.1 接入wsl2
为vscode安装远程开发扩展包
在刚才安装的Terminal中的Linux发行版中输入code . 会启动一个vscode窗口,然后就可以在vscode中像操作本地项目一样操作wsl中的项目了。
还有更方便的启动方式,启动本地vscode时左下角有一个快捷按钮,点击后选择要做的操作即可。