本文说明如果在Windows下安装多个相同的WSL发行版。

本文作为WSL使用系列文章的补充,更多请参考前文 WSL体验 WSL2体验 WSL踩坑记录

之前为了让WSL有不同的Linux环境,装了2个发行版。当再想要不同的Linux部署环境时,理论上可以在WSL2中安装docker,但WSL2无法直接访问Windows下的USB转串口,因此必须再安装一个WSL的发行版。之前18.04转为WSL2和20.04为WSL都被用了,不可能再去装一个16.04的WSL,因此想着再装一个20.04的WSL。当然还是要祭出大杀器LxRunOffline, 下载方法见«WSL踩坑记录»。转化方法很简单,打开Power shell执行: Step 1: 查看当前发行版

.\LxRunOffline.exe l

显示

Ubuntu-18.04
Ubuntu-20.04

Step 2: 复制发行版

.\LxRunOffline.exe d  -n Ubuntu-20.04 -d F:\wsl\Ubuntu-20.04-z\ -N Ubuntu-20.04-z

上面命令的意思是: d 复制 -n 指定被复制发行版Ubuntu-20.04 -d 指定复制发行版文件放置的路径为F:\wsl\Ubuntu-20.04-z
-N 指定复制发行版的名称为Ubuntu-20.04-z 视原本发行版的大小复制时间不同,复制完后再执行

.\LxRunOffline.exe l

就可以看到复制出来的发行版

Ubuntu-18.04
Ubuntu-20.04-z
Ubuntu-20.04

在power shell中选择即可运行。

避坑指南 复制前要先关闭被复制的WSL发行版,让其处于stop状态,否则会失败。 如果复制失败,再次复制会提示复制发行版的名称已经被占用,使用下面命令进行删除

.\LxRunOffline.exe ur -n Ubuntu-20.04-z