导入 WSL 发行版失败,并显示“未指定错误”

导入 WSL 发行版失败,并显示“未指定错误”

我正在尝试将我的 WSL1 Ubuntu 18.04 发行版从旧的戴尔笔记本电脑迁移到安装了 WSL2 的新 HP 笔记本电脑。我多次执行了以下步骤:

  1. 在旧笔记本电脑上导出发行版(确保以管理员模式运行命令提示符):

    wsl --export Ubuntu-18.04 C:\Users\[myusername]\Ubuntu-18.04.tar
    
  2. 通过 USB 驱动器将 TAR 文件移动到新笔记本电脑。

  3. 在新笔记本电脑上导入发行版(再次确保以管理员模式运行命令提示符):

    wsl --import Ubuntu-18.04 C:\Users\[myusername]\Ubuntu-18.04\ C:\Users\[myusername]\Ubuntu-18.04.tar
    

每次都会失败并显示通用消息Unspecified error。我尝试添加参数--version 1,然后尝试使用--version 2,没有任何区别。

我听说如果在导入过程中内存不足,就会发生这种情况。我的新笔记本电脑上有 16 GB 的 RAM 和四核处理器,再加上发行版 TAR 文件只有大约 3.3 GB,所以这种情况似乎不太可能发生。尽管如此,我还是尝试在主目录中创建一个 .wslconfig 文件,其中包含非常慷慨的配置:

[wsl2]
memory=8GB
processors=4
swap=120GB

即使有这个选项,也无济于事--version 2。它只是失败得更快。(关于那个巨大的交换大小,我有 405 GB 的可用磁盘空间,以防万一。)

我甚至不惜一切代价将我的旧笔记本电脑上的 Windows 升级到 2004 版,升级到 WSL2(同时将我的 Ubuntu 发行版保持在 1 版),然后重新导出该发行版以查看是否有区别,但当然没有。

请记住,如果可以避免的话,我暂时不想升级我的 Ubuntu 发行版来使用 WSL2。如果必须这样做,我会这样做,但即使将 WSL1 发行版迁移到 WSL2 系统,此过程也应该能够顺利进行。可能出了什么问题?

答案1

对我来说,解决方案是通过以管理员身份运行以下命令来更新 WSL:

wsl --update --web-download

--web-download选项可确保不会从 Microsoft Store 安装 WSL 更新,否则防止其在 SSH 会话中工作。如果你不需要以这种方式使用 WSL,则该--web-download选项可能没有必要。

答案2

 wsl --import Ubuntu-18.04 'C:\Users\[myusername]\Ubuntu-18.04\' .\ubuntu.tar

尝试使用引号。应该没问题。

相关内容