添加共存版wsl
前言:因为工作是前端开发,使用wsl2热更新延迟过高
,而wsl1 又不能用docker容器
(吐槽下微软,半成品太多了,点名Windows10和11), 查了一番资料之后,做了一个兼容方案,可以实现一个发行版使用不同结构的wsl
使用方法
关闭wsl
打开PowerShell,确保容器目前处于关闭状态。
wsl --shutdown
导出Linux发行版
首先需要把已有的导出为一个档案文件,
wsl --export 分发名称 导出名称
wsl --export Debian Debian
导入系统
在上一步导出后,我们再使用import进行导入,这里可以指定安装位置,因此 也可以用来移动WSL安装位置 :
# wsl --import 安装后的名称 安装路径 上一步导出的名称
# 例如
wsl --import Debian2 D:\Debian Debian
验证可以使用wsl --list -v
,这时我们已经有了两个WSL1。
转换版本
接下来我们转换其中一个为WSL2
# wsl --set-version 安装后的名称 2
wsl --set-version Debian 2
再执行wsl --list -v
就可以得到两个版本的WSL共存了。Windows terminal也会多出一个名为Debian2的子系统
卸载命令
wsl --unregister Debian2
设置默认用户
迁移后默认用户会变成root用户, 这时候我们可以使用以下方法来调整默认用户
在Linux子系统命令行中编辑配置文件
vim /etc/wsl.conf
添加内容
# [user]
# default=<string>
[user]
default=zdy
关闭并重启 Linux 子系统
# wsl --shutdown # or wsl -t <发行版>
wsl -t Debian2