即使安装了“ Ubuntu”,“ Linux的Windows子系统也没有安装的发行版”

时间:2019-08-11 12:02:58

标签: windows-subsystem-for-linux

由于wsl驱动器中的存储空间不足,我最近将C:目录移动到了另一个驱动器。根据{{​​3}}中提供的答案,我使用了lxrunoffline工具,并将我的 Ubuntu 发行版移动到了另一个驱动器(本例中为E:\wsl)。发行版本成功移动后,我就运行wsl进行测试,它就像一个魅力。

一切正常,直到有一天我不小心将E:\wsl文件夹重命名为其他名称。好了,正如预期的那样,wsl无效。然后,我恢复为wsl的名称,并希望它能正常工作,但令我惊讶的是,即使安装了发行版,它也没有找到任何已安装的发行版...?

E:> wsl
Windows Subsystem for Linux has no installed distributions.
Distributions can be installed by visiting the Microsoft Store:
https://aka.ms/wslstore

this great answer, "Changing TCP Timeouts" section

是否有任何方法可以还原到旧目录或使wsl指向手动位置?

编辑:我不想重置Ubuntu,因为我想保留已安装的软件包和偏好设置...

1 个答案:

答案 0 :(得分:0)

好吧,我终于找到了解决这个问题的方法。 ?

这就像使用lxrunofflinerg命令使用register工具注册发行版一样简单。

E:\LxRunOffline\LxRunOffline-v3.3.3>lxrunoffline rg
[ERROR] the option '-d' is required but missing

Options:
  -n arg                Name of the distribution
  -d arg                The directory containing the distribution.
  -c arg                The config file to use. This argument is optional.

运行 register 命令后,我能够照常启动wsl。但这将以“ root”用户身份登录,因此将从“ / root”目录启动。我以不同的用户身份运行了以下命令以启动wsl(这是Ubuntu的):

ubuntu config --default-user <user-name>