windows10,从C盘迁移WSL2 的Ubuntu,docker-desktop,docker-desktop-data至其他盘

该文章详细介绍了如何在Windows10的WSL2环境下,将Ubuntu、DockerDesktop及DockerDesktopData进行打包、导出,然后重新导入的步骤。在过程中遇到Ubuntu与Docker服务不能同时启动的问题,解决方案是删除并重命名Docker配置文件夹,重启电脑后恢复正常。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

环境

windows10, wsl2, docker

总体流程

通过wsl把ubuntu,docker-desktop,docker-desktop-data打包移走,再重新导入。

具体步骤

  1. 查看并关闭wsl下的Ubuntu,docker-desktop,docker-desktop-data;
wsl -l -v //查看

在这里插入图片描述

wsl --shutdown //全部关闭
  1. 导出包;
wsl --export Ubuntu D:\WSL\ubuntu.tar //选择tar包要导出的路径,注意这里要提前建好文件夹
wsl --export Ubuntu D:\WSL\docker\docker-desktop.tar
wsl --export Ubuntu D:\WSL\docker\docker-desktop-data.tar
  1. 查看一下对应目录下是否有tar包,导出成功就注销原有的系统和数据;
wsl --unregister Ubuntu
wsl --unregister docker-desktop
wsl --unregister docker-desktop-data
  1. 重新导入;
wsl --import <导入的tar名称> <导入盘的路径> <.tar的路径> --version 2 (代表wsl2)
wsl --import Ubuntu D:\WSL\ D:\WSL\ubuntu.tar --version 2
wsl --import docker-desktop D:\WSL\docker D:\WSL\docker\docker-desktop.tar --version 2
wsl --import docker-desktop-data D:\WSL\docker D:\WSL\docker\docker-desktop-data.tar --version 2

以上完毕后,出现两个问题:

  1. Ubuntu和docker-desktop、docker-desktop-data无法同时通过 wsl -d 启动,也就是说要么启动Ubuntu,要么启动docker-desktop、docker-desktop-data,通过wsl -l -v查看,存在stopped;
  2. 无法打开docker;
    在这里插入图片描述
    解决方法:在C:\Users\17795\AppData\Roaming下找到Docker,给Docker重命名(达到删除+备份的目的),重启电脑后一切正常。
Windows PowerShell 版权所有(C) Microsoft Corporation。保留所有权利。 安装最新的 PowerShell,了解新功能和改进!https://aka.ms/PSWindows PS C:\Windows\system32> wsl --shutdown PS C:\Windows\system32> wsl --export docker-desktop-data D:\docker\docker-desktop-data.tar 不存在具有所提供名称的分发。 错误代码: Wsl/Service/WSL_E_DISTRO_NOT_FOUND PS C:\Windows\system32> # 查看所有WSL分发版 >> wsl -l -v NAME STATE VERSION * Ubuntu Stopped 2 docker-desktop Stopped 2 PS C:\Windows\system32> wsl --shutdown PS C:\Windows\system32> # 强制删除残留配置(谨慎操作) >> wsl --unregister docker-desktop >> wsl --unregister docker-desktop-data >> >> # 重启Docker Desktop >> Start-Process 'C:\Program Files\Docker\Docker\Docker Desktop.exe' 正在注销。 操作成功完成。 正在注销。 不存在具有所提供名称的分发。 错误代码: Wsl/Service/WSL_E_DISTRO_NOT_FOUND PS C:\Windows\system32> [wsl2] >> kernelCommandLine = sysctl vm 找不到类型 [wsl2]。 所在位置 行:1 字符: 1 + [wsl2] + ~~~~~~ + CategoryInfo : InvalidOperation: (wsl2:TypeName) [],RuntimeException + FullyQualifiedErrorId : TypeNotFound kernelCommandLine : 无法将“kernelCommandLine”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如 果包括路径,请确保路径正确,然后再试一次。 所在位置 行:2 字符: 1 + kernelCommandLine = sysctl vm + ~~~~~~~~~~~~~~~~~ + CategoryInfo : ObjectNotFound: (kernelCommandLine:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException PS C:\Windows\system32>
03-08
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值