长期以来,在Windows下使用Linux,都需要使用VMware、VirtualBox之类的虚拟机。这些虚拟机往往比较笨重,启动慢、占资源多。
WSL2是Windows提供的新选择。按照微软官网文档的说法,WSL2也使用了VM技术。但这个VM在幕后运行,不需要配置或管理,启动时间短,占用资源少。也许可以理解为一种新型的、轻量的虚拟机。
VMware、VirtualBox是传统的Host OS虚拟化,基于宿主操作系统(如Windows),而WSL2是直接基于硬件上,和Windows自身属于同一级别,所以开销更小。
目前WSL2没有完全成熟,还有一些限制(比如不能使用systemctl),最大的好处就是可以安装Docker Desktop,以及可以使用 GPU 加速的机器学习训练。这就是WSL2最大的用处,其它的情况还是继续用VMware、VirtualBox比较好。
按照官方文档,直接在PowerShell(管理员)运行以下命令即可:
wsl --install
但这种方式在下载Linux发行版(默认是Ubuntu)的时候,有可能因为下载速度慢,导致安装失败。
上面方法安装Linux发行版失败后,可以重启电脑,更新wsl
。
wsl --update
然后再到Microsoft Store
搜索Ubuntu
进行下载安装。
下载安装完成后,点击开始菜单,找到Ubuntu
并点击。
Windows会对Ubuntu
继续安装,然后要求设置Ubuntu
的用户名和密码。这个用户名密码是Linux独立的用户名和密码,和Windows系统无关。
之后会进入命令行界面,可以输入exit
退出。
安装完成。
进入Linux:
Ubuntu
进入Linuxwsl
进入LinuxMicrosoft Store
下载Windows Terminal
,在Windows Terminal
中输入wsl
进入Linux在Linux输入以下命令,即可退出Linux:
exit
WSL默认安装Ubuntu发行版。查看已安装的发行版wsl -l -v
PS C:\Users\RUDY> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 2
这里的VERSION
是指WSL的版本,要使用版本2
。如果是版本1
,可以使用wsl --set-version Ubuntu 2
进行修改。
可以选择安装其它发行版,甚至安装多个发行版。
查看可安装的发行版wsl -l -o
比如可以在Microsoft Store
搜索Debian
进行下载安装。
安装后运行wsl -l -v
PS C:\Users\RUDY> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 2
Debian Running 2
带*
表示默认发行版,即输入wsl
命令默认进入的Linux。
可以在开始菜单点击Debain
进入Debain发行版,或者直接输入Debian
命令,即可进入debian发行版。
进入Linux就会启动,使用exit
退出后,依然保持启动状态。
终止Linux:wsl --terminate <Distribution Name>
,如wsl --terminate Debian
关闭Linux:wsl --shutdown
,可以停止所有的Linux。
卸载Linux:wsl --unregister <DistributionName>
,如wsl --unregister Debian
wsl --export <Distribution Name> <FileName>
wsl --import <Distribution Name> <InstallLocation> <FileName>
此功能可以用于将发行版安装到其它目录,也可以实现一个发行版安装两个实例。