环境要求
- 系统要求Win10/11,家庭版亦可
- 启用CPU虚拟化,可在任务管理器中查看启用状态
- 在控制面板-程序-启用或关闭Windows功能中,启用“适用于Linux的Windows子系统”和“虚拟机平台”功能
安装WSL2
- 下载并安装:适用于 x64 计算机的 WSL2 Linux 内核更新包
- 管理员身份打开命令提示符,执行
wsl --set-default-version 2
,设置WSL的默认版本 - 在Microsoft Store里下载安装所需的Linux分发版
- 命令提示符执行
wsl
,即可启动linux子系统。首次启动需要设置用户名和密码 - 到这步实际上就安装完成了,但是子系统默认的安装位置是C盘,占用加大存储空间。如果C盘空间足够,可略过迁移WSL的步骤。
迁移WSL的路径
- 执行
wsl -l -v
,查看已安装的子系统状态。执行wsl --shutdown
关闭运行中的子系统 - 执行
wsl --export 子系统名称 路径
导出子系统,如wsl --export Ubuntu-20.04 F:\Ubuntu\ubuntu.tar
。注意:①需先创建该目录,后执行指令,否则会提示找不到指定路径 ②确保子系统名称一致 - 执行
wsl --import 子系统名称 迁移后的路径 导出的ubuntu.tar的路径 --version 2
,如wsl --import Ubuntu-20.04 F:\WSL\Ubuntu2004 F:\Ubuntu\ubuntu.tar --version 2
- 恢复用户名称,执行
子系统名称1 config --default-user 原用户名
注意!!!此处子系统名称1
应填写“设置的子系统名称去掉符号,保留字母数字的部分”,如,我的子系统名称为Ubuntu-20.04,则应执行的指令为Ubuntu2004 config --default-user
- 之后,执行wsl启动子系统,显示的用户名应是之前设置的用户名,则迁移成功
设置WSL2图形界面
实际上,在Windows 10 版本 19044+ 或 Windows 11以后,已经原生支持WSL2的图形界面,无需使用第三方软件实现,只需按如下方式安装更新包即可:
命令提示符执行wsl --update
,然后执行wsl --shutdown
,之后重新打开wsl系统即可。(这一步实际上就是安装了如下软件,理论上从商店安装也可以)
可以使用xclock
测试图形界面,需首先在linux中执行sudo apt install x11-apps
以下是之前写的,现已不需要……
1. 下载并安装VcXsrv 下载地址
2. 启动VcXsrv,选择multiple windows->start no cilent->Extra Settings全部勾选->启动
3. 在.bashrc添加如下环境变量
export DISPLAY=`cat /etc/resolv.conf | grep nameserver | awk '{print $2}'`:0
4. 执行xclock测试效果,注意:此方式实现的图形界面,某些软件可能出现启动黑屏,可先执行 export LIBGL_ALWAYS_SOFTWARE=1
,再运行对应软件
常用指令备忘及注意事项
- 列出子系统状态
wsl -l -v
- 关闭子系统
wsl --shutdown
- 注意:启动子系统后,即使关闭所有的WSL窗口,后台仍在占用内存,故不用时应使用如上指令关闭子系统。