从 VHDX 文件恢复 (导入) WSL 2 安装

Microsoft 官方以及常见的 WSL 导入导出方式, 都是通过 wsl --export 生成 tar 文件而使用 wsl --import 命令完成导入.

但是, 有时候出于某些意外, 比如系统出现严重问题需要重装, 或者其他导致注册表丢失的情况, Windows 丢失了 WSL 安装相关的信息, 将无法使用上述的方式进行导出.

不过, 只要还有 WSL 所在的 VHDX 文件 (虚拟磁盘文件), 就没有问题, 因为 WSL 最关键的就是这个虚拟磁盘文件, 只需要在注册表中重建相应的信息就能正常使用.

有时候 WSL 磁盘文件过大, 导入导出时容易出现问题, 这种方式也是适用的.

本文讲解的思路主要来自于 Issue #4762 - Microsoft/WSL.

注册表丢失的情况

笔者在重装系统之前, 是通过 Microsoft Store 安装的 Ubuntu 发行版. 应用商店中的数据一般在 %LocalAppData%/Packages 1 下.

重置系统 (选择保留个人数据) 后, 数据文件会被 迁移Windows.old 中, 也就是 X:/Windows.old/Users/%UserName%/AppData/Local/Packages 中.

其中, 商店里安装的 Ubuntu 发行版对应的包名会以 CanonicalGroupLimited.Ubuntu 开头, 打开对应的目录后, 在 LocalState 中就能找到 .vhdx 文件.

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值