说明
本文使用的Windows环境是Windows 11 专业版。
WSL现在有二代WSL2,后续都通过WSL2来安装Linux,使用的是Ubuntu发行版,版本是20.04。
安装过程使用了PowerShell,且是管理员权限打开的。
参考适用于 Linux 的 Windows 子系统文档 | Microsoft Learn。
安装Linux系统
- 开启服务:
或者在PowerShell下执行如下命令:
dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
前面两个这边都执行了。之后可能需要一次系统的重启。
- 在Windows Store中下载Ubuntu20.04和Windows Subsystem for Linux:
Windows Subsystem for Linux可以直接安装,但是Ubuntu不建议直接安装,因为这样会将Ubuntu安装在C盘,如果空间不够,可能导致其它的问题。
- 将下载到的Ubuntu放到指定的位置,确保空间足够。通常Ubuntu会在C:\Program Files\WindowsApps目录下,但是无法直接打开,这时还是需要使用PowerShell进入到该目录下,并找到对应的Ubuntu目录:
注意这里会有多个目录,但是我们只需要找到有Ubunut安装文件的目录,并将该目录里面的内容拷贝出来:
PS C:\Program Files\WindowsApps> ls .\CanonicalGroupLimited.Ubuntu20.04LTS_2004.6.16.0_x64__79rhkp1fndgsc\目录: C:\Program Files\WindowsApps\CanonicalGroupLimited.Ubuntu20.04LTS_2004.6.16.0_x64__79rhkp1fndgscMode LastWriteTime Length Name
---- ------------- ------ ----
d----- 2023/7/29 0:19 AppxMetadata
d----- 2023/7/29 0:19 Assets
d----- 2023/7/29 0:19 Terminal
-a---- 2023/7/29 0:19 523852 AppxBlockMap.xml
-a---- 2023/7/29 0:19 3677 AppxManifest.xml
-a---- 2023/7/29 0:19 12035 AppxSignature.p7x
-a---- 2023/7/29 0:28 567587703 install.tar.gz
-a---- 2023/7/29 0:28 3648 resources.pri
-a---- 2023/7/29 0:28 598016 ubuntu2004.exe
这里将上述内容拷贝到指定的目录:
- 将WSL设置成WSL2:
PS C:\Windows\system32> wsl --set-default-version 2
有关与 WSL 2 关键区别的信息,请访问 https://aka.ms/wsl2操作成功完成。
PS C:\Windows\system32> wsl --version
WSL 版本: 1.2.5.0
内核版本: 5.15.90.1
WSLg 版本: 1.0.51
MSRDC 版本: 1.2.3770
Direct3D 版本: 1.608.2-61064218
DXCore 版本: 10.0.25131.1002-220531-1700.rs-onecore-base2-hyp
Windows 版本: 10.0.22621.2070
得到的结果如上所示。
- 点击exe文件即可开始安装,这样会在当前目录生成一个新的文件:
里面就包含了安装的Linux系统。
安装的时候需要等待一段时间,如果有报错,建议根据错误码在网上进一步查询。过程中还需要设置账号密码。安装完成之后可以查看安装的Linux系统:
PS C:\Windows\system32> wsl --list
适用于 Linux 的 Windows 子系统分发:
Ubuntu-20.04 (默认)
使用Linux系统
直接打开PowerShell输入wsl即可开启Linux系统:
PS C:\Windows\system32> wsl
jw@HOME:/mnt/c/Windows/system32$ uname -a
Linux HOME 5.15.90.1-microsoft-standard-WSL2 #1 SMP Fri Jan 27 02:56:13 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
VS Code与WSL联合开发
Windows下安装VS Code(注意不是在WSL下的Ubuntu中安装)。然后为VS Code安装WSL插件:
之后通过快捷键(Ctrl+Alt+o)选择连接到WSL:
下面是连接过程:
之后就可以打开Ubuntu上的文件:
并进行编辑和编译了: