【记录】WSL2 新系统迁移过程

2023-05-16

旧电脑导出

在原电脑: (需要管理员权限)

  1. 关闭虚拟机 wsl --shutdown
  2. 查看已经安装的实例 wsl -l -v,输出如下:
  NAME          STATE           VERSION
* Ubuntu2004    Stopped         2
  1. 导出虚拟机 wsl --export Ubuntu2004 E:\Ubuntu_20220605.tar ,即导出到 E 盘,文件名为 Ubuntu_20220605.tar

新电脑操作

新电脑的系统应该没有安装任何的 wsl 子系统,必须手动安装一个再注销才能导入原有的版本。

  1. 查看最新版本的 wsl wsl -l -o ,并显示如下输出:
  NAME            FRIENDLY NAME
* Ubuntu          Ubuntu
  Debian          Debian GNU/Linux
  kali-linux      Kali Linux Rolling
  openSUSE-42     openSUSE Leap 42
  SLES-12         SUSE Linux Enterprise Server v12
  Ubuntu-16.04    Ubuntu 16.04 LTS
  Ubuntu-18.04    Ubuntu 18.04 LTS
  Ubuntu-20.04    Ubuntu 20.04 LTS
  1. 安装 wsl2 最新版,以 Ubuntu2004为例:wsl --install -d Ubuntu-20.04
  2. 然后自动安装虚拟机平台和 Ubuntu2004,安装成功后会弹出设置用户名和密码的窗口。这里用不上,因此随便设置了一个。(估计可以不需要设置直接关闭)
  3. 终止刚刚运行的虚拟机 wsl --shutdown
  4. 输入 wslconfig /l wslconfig /u Ubuntu-20.04 注销虚拟机。
PS C:\Users\dnfkr> wslconfig /l
适用于 Linux 的 Windows 子系统分发版:
Ubuntu-20.04 (默认)
PS C:\Users\dnfkr> wslconfig /u Ubuntu-20.04
正在注销...
  1. 导入 tar 文件:
    wsl --import ubuntu2004 E:\Dev\ubuntu2004 E:\Dev\Ubuntu_20220605.tar --version 2
    ubuntu2004 是新的实例名称,可以执行设置。设置后即输入 wsl -l -v 后显示的名称;
    E:\Dev\ubuntu2004 是导入后的镜像以及相关数据的存放路径;
    E:\Dev\Ubuntu_20220605.tar 是需要导入的虚拟机备份文件,即通过 --export 导出的那个文件。

随后就可以正常启动了。不要从开始菜单里启动,会重新下载。走终端启动即可。

修改默认用户名

通过 wsl --export 导出,然后在其他系统导入 后的,wsl 进入系统后默认用户名变成root,需要修改默认的为原来的用户名,按如下方法得到解决: 输入 regedit 打开注册表 导航到键:HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Lxss 检查其子项以找到在项目中具有正确名称的分发 DistributionName 创建或修改名为 DWORD 的项目 DefaultUid 并将其设置为默认用户的用户ID(uid)。这里 root 用户 id 是 0,而第一个用户 ID 是 1000(0x3e8)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【记录】WSL2 新系统迁移过程 的相关文章

随机推荐