1、安装 WSL
(1) 启用 Windows 虚拟机功能
在 “控制面板”->“程序”->“启用或者关闭Windows功能” 中开启 “Hyper-V”(也可能显示为 “虚拟机平台”)、“适用于 Windows 的 Linux 子系统”(也就是所谓的 WSL)、“Windows 虚拟机监控程序平台”。
此时 WSL 已被启用,但此时的 WSL 不一定是 WSL2,如果在后续安装 Ubuntu20 时出现问题,可以尝试以下命令:
wsl --install
可以使用如下命令查看当前 wsl 的版本:
wsl -l -v
2、安装 Ubuntu 20
一种简单的方式是在微软商店中直接下载 Ubuntu 系统。
如果想要在命令行中运行,可以参考文后的 “参考资料”。
3、使用 LxRunOffline 将 Ubuntu 20 迁移到非系统盘
(1) 基本用法
① 使用 WSL 时,如果使用微软商店安装 Ubuntu,那么其必须安装在系统盘上(即便之前设置过微软商店的新应用安装在非系统盘上,现在安装 Ubuntu 时也会报错)。如果系统盘的空间不够,可以使用 LxRunOffline 工具将其迁移到非系统盘上。
② LxRunOffline 的 github 仓库如下:
https://github.com/DDoSolitary/LxRunOffline
从 github 仓库下载LxRunOffline 的 release 版本(压缩包),并在本地解压。
③ 接下来是在命令行下使用 LxRunOffline 迁移 LxRunOffline(由于这个工具使用频率不高,因此不必要将其加入到环境变量中,直接在 LxRunOffline.exe 所在的路径下使用命令行即可)。
首先使用 list 参数查看目前 WSL 中有哪些 Linux 系统,命令如下:
LxRunOffline.exe list
在返回的结果中选择自己想要迁移的那个 Linux 系统,记住其名字。
然后使用如下命令进行迁移(其中 Ubuntu-20.04 是希望迁移的 Linux 系统名字,D:\WSL\Ubuntu20 是迁移的目的路径):
LxRunOffline.exe move -n Ubuntu-20.04 -d D:\WSL\Ubuntu20
(2) 一个可能出现的问题
在使用 LxRunOffline 的迁移命令时,可能会出现以下报错:
Couldn't set the case sensitive attribute of the directory "***".
Reason: Indicates that the directory trying to be deleted is not empty.
如果出现了这个问题,则需要更换 LxRunOffline 的版本,可以尝试将 LxRunOffline 的版本改成 LxRunOffline-v3.5.0-11-gfdab71a-msvc.zip 这个版本,其官方地址为:
https://ddosolitary-builds.sourceforge.io/LxRunOffline/LxRunOffline-v3.5.0-11-gfdab71a-msvc.zip
如果官方地址失效,可以尝试 CSDN 的这一地址:
https://download.csdn.net/download/i_ziyu/86857201
4、参考资料
WSL1 升级为 WSL2:
https://zhuanlan.zhihu.com/p/356397851
Windows 11 安装 WSL2:
https://zhuanlan.zhihu.com/p/475462241
WSL2 使用入门:
https://zhuanlan.zhihu.com/p/69121280
WSL 使用史上最详细教程:
https://blog.csdn.net/weixin_45027467/article/details/106862520
总结 Windows 下安装 WSL 与升级 WSL2 的方法:
https://blog.csdn.net/qq_35333978/article/details/113177819