我的 Windows 10 机器上安装了 WSL 2。我切换到版本 1,并使用 do-release-upgrade 命令从 Ubuntu 18.04 升级到 19.04。然后我尝试切换到 WSL 2,但我注意到的输出是wsl -l -v
Ubuntu 18.04,而不是 19.04,但在运行 Ubuntu 提示符时,输出lsb_release -a
准确为 19.04。然后我尝试将发行版移动到 WSL 2,并收到
Exporting the distribution failed.
bsdtar: Write error
错误。我希望将名称更新为实际发行版 (19.04) 可以解决此问题。有什么想法吗?可能它在 WSL 的某个配置文件中?
答案1
如果要重命名 WSL 发行版,则必须:
- 停止 WSL 的所有实例
- 打开注册表编辑器并转到
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss
- 找到要重命名的发行版,查找
DistributionName
- 按照你的需要更改
- 再次启动WSL,你也可以执行
wsl.exe -l -v
来检查是否改变
答案2
(1):
打开 Windows 注册表编辑器 ( regedit
),然后将以下内容粘贴URI
到其地址栏中:
Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Lxss
(2):
在左侧导航窗格中,检查如下所示的文件夹{xxxxxxxx-yyyy-xxxx-yyyy-xxxxxxxxxxxx}
。(文件夹名称包含所有十六进制数字)。双击每个文件夹,直到找到要更改名称的 wsl 分发版。
(3):
在右侧导航栏中,双击REG_SZ
名为 的项目DistributionName
,然后根据需要编辑其内容。保存。
(4):
最后,重新启动wsl
。
Win + R
在您的电脑上按下: 。services.msc
在弹出的搜索框中输入内容。- 在弹出的服务管理器工具中,找到
LxssManager
列表中的第一个条目,然后重新启动它。
那就可以了。
NOTE
:不要跳过步骤(4)
,因为这样做会导致某些wsl
应用程序启动时出错。例如,由于尚未刷新/重新启动,Visual Studio Code
将无法正确启动。wsl
PS:不要忘记编辑应用程序启动图标的启动属性。任何指定-d distroName
或选项wsl.exe [...]
的wslg.exe [...]
图标都需要编辑。
答案3
我自己也遇到过这种情况。虽然它基本上只是表面问题,并且只有在运行 WSL 特定命令时才会出现,但我希望避免将来出现混乱。
我最终使用了LxRun离线复制我的 Distro,在此过程中,您可以命名重复项,将重复项设置为默认值,然后卸载我的旧 Distro。
我所做操作的示例(从我的用户主目录在 powershell 中运行):
#List installed Distros
LxRunOffline.exe l
#Duplicate Ubuntu-18.04 to folder in my user directory and name it Ubuntu
LxRunOffline.exe d -n Ubuntu-18.04 -d ./WSL/Ubuntu -N Ubuntu
#Set new Distro as default
LxRunOffline.exe sd -n Ubuntu
#Uninstall old Distro
LxRunOffline.exe ui -n Ubuntu-18.04
PS:需要明确的是,WSL 列出的 Distro 名称与 Distro 内部实际运行的内容无关。因此,您只需在 WSL2 convert 命令中使用 WSL 当前列出的当前名称即可。