首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不使用WSL的备份wsl -导入或导出

不使用WSL的备份wsl -导入或导出
EN

Ask Ubuntu用户
提问于 2021-07-06 20:15:27
回答 1查看 3.1K关注 0票数 4

我需要在我的计算机上重新安装窗口,但保留所有文件,但我不确定它是否会保留或删除我已安装的发行版。另外,我无法打开终端并运行wsl --import,因为终端挂起,窗口因某种原因而崩溃。是否有任何方法备份WSL或我可以在重置后恢复它?

编辑:忘记提到我使用的是WSL 2

我忘记添加的最后一件事是,当我更改pc时,我备份并导入了它,从我的文件中可以看到,我有一个名为ext4.vhdx的文件,昨天更新了。那会是我的发行版吗?这是否意味着我可以复制它?

EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2021-07-06 20:41:33

是的,Windows安装倾向于删除用户设置(即AppData),并且WSL文件通常安装在那里。在执行Windows重新安装之前,备份发行版是个好主意。正如您所说的,这通常是用wsl --export/--import完成的,但在您的情况下,这是不可行的。

For WSL2

在WSL2下,整个文件系统保存在一个名为ext4.vhdx的虚拟HDD文件中。你可以在%userprofile%\AppData\Local\Packages\CanonicalGroup...\LocalState\ext4.vhdx中找到它。...部件将根据您从商店安装的确切Ubuntu版本而有所不同。

在重新安装Windows之前备份此文件。确保WSL根本不通过wsl --shutdown运行(假设您仍然可以访问该命令)。如果您不能wsl --shutdown,至少在备份文件之前重新启动Windows,以确保它没有在使用中。如果你真的想确定的话,你也可以在安全模式下运行。

重新安装之后,您应该能够通过以下方法进行恢复:

  • 重新安装WSL (如果需要,请不要忘记将默认版本设置为2 )
  • 从Microsoft重新安装Ubuntu
  • 在新安装的ext4.vhdx上复制回来。

如果您有Windows或更高的版本,最好是通过创建一个新的Ubuntu并将它(最好是vhdx的一个副本)作为驱动器来测试vhdx

我已经复制了vhdx从一个WSL安装到另一个没有问题,但当然,没有保证它会完美。

假设vhdx是有效的,作为后盾,您可以在VM中将其挂载为虚拟驱动器,复制必要的用户文件,并仅复制那些通过新安装的文件。

For WSL1

对于其他遇到这种情况并安装了WSL1 (也许除了WSL2之外)的读者,没有办法像使用WSL2那样备份和恢复整个文件系统。

但是您可以并且仍然应该备份%userprofile%\AppData\Local\Packages\CanonicalGroup...\LocalState\rootfs。这包含整个文件系统,因此任何必要的文件都可以复制回您的新安装。但是,从备份恢复整个文件系统是不安全的,因为每个文件/目录都必须手动重置权限。

请注意,在任何情况下,您都不应该使用这个目录,比如当WSL安装完全被保存时,需要恢复文件。通过Windows访问这些文件会导致WSL安装据微软称损坏。

票数 9
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1350425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档