【数据迁移】Windows11 下将 Ubuntu 从 C 盘迁移到 D 盘

由于个人情况存在差异,请在参考本文进行数据迁移前后多方比对确认,确保无误后再谨慎操作!
【2025-08-03补充】运行过程中发现实际上 docker 的迁移工作可能更为复杂!强烈不推荐本文的 docker 迁移方法(本文已翻车)!!!!没有删除此处只因为留给读者作为警示!!!!!Ubuntu暂时没有排查出问题,但也谨慎参考!!!!

一、情景描述

C 盘空间不够了,用 TreeSize 检测的时候发现之前下载的 docker 和 wsl 占了很大空间,但不敢随便删掉,所以打算从 C 盘迁移到 D 盘。

先用wsl -l -v指令查看一下当前已安装的 wsl。

发现有 Ubuntu-18.04、docker-desktop-data 和 docker-desktop。由于 docker-desktop 体积远不如其他的大,因此我们对 Ubuntu-18.04、docker-desktop-data 进行迁移,从 C 盘迁移到 D 盘。

二、操作过程

【2025-08-03补充】运行过程中发现实际上 docker 的迁移工作可能更为复杂!强烈不推荐本文的 docker 迁移方法(本文已翻车)!!!!没有删除此处只因为留给读者作为警示!!!!!Ubuntu暂时没有排查出问题,但也谨慎参考!!!!

对于 docker-desktop-data 和 Ubuntu 而言,迁移数据的流程是一致的:先导出tar包,然后注销实例,最后再导入。

(一)迁移 docker-desktop-data【2025-08-03补充】此部分已翻车,仅作警示作用

1. 导出 tar 包

执行命令如下,导出数据为 tar 包(具体的 wsl 名称与目录位置根据自己情况进行修改)。

bash 复制代码
wsl --export docker-desktop-data D:\WSL\Docker\docker-desktop-data.tar

​​

2. 注销实例

执行命令如下,注销 docker-desktop-data。注销后可使用wsl -l -v命令验证,发现确实不再有 docker-desktop-data。

bash 复制代码
wsl --unregister docker-desktop-data

3. 导入数据

执行命令如下,导入数据。导入后可使用wsl -l -v命令验证。

bash 复制代码
wsl --import docker-desktop-data D:\WSL\Docker\docker-data D:\WSL\Docker\docker-desktop-data.tar --version 2

【2025-08-03补充】存在的问题

然而之后在执行docker images等基本命令后发现,几乎无法在powershell执行这些命令,在UI界面也同样无法操作任何 images 或 volumes。检查后发现Docker Desktop的【设置】->【Resources】下 Disk mage location 的位置仍然在 C 盘,当我尝试变更为 D 盘对应位置时程序会卡死。我不清楚究竟是什么原因造成的,网上也有资料说需要开放 D 盘对应目录的所有权限,但我尝试无果。因此对于上述内容请读者仔细甄别,避免出现数据丢失的情况!!!

(二)迁移Ubuntu

迁出Ubuntu也是类似的过程。

1. 导出 tar 包

执行命令如下,导出数据为 tar 包。

bash 复制代码
wsl --export Ubuntu-18.04 D:\WSL\Ubuntu-18.04\Ubuntu-18.04.tar

2. 注销实例

执行命令如下,注销 Ubuntu。

bash 复制代码
wsl --unregister Ubuntu-18.04

3. 导入数据

导入数据。

bash 复制代码
wsl --import Ubuntu-18.04 D:\WSL\Ubuntu-18.04 D:\WSL\Ubuntu-18.04\Ubuntu-18.04.tar --version 2
相关推荐
迷路爸爸1809 小时前
无sudo权限远程连接Ubuntu服务器安装TeX Live实操记录(适配VS Code+LaTeX Workshop,含路径选择与卸载方案)
java·服务器·ubuntu·latex
皓月盈江9 小时前
MoonBit国产编程语言创建新包和使用新包
linux·moonbit·国产编程语言·moonbit教程·moonbit创建包·moonbit使用包
小明_GLC9 小时前
关于租用阿里云服务器拉取Docker镜像的问题
docker
今晚打佬虎9 小时前
精准阻断 Docker 容器映射端口:流量路径诊断与 iptables 配置
运维·docker·容器
那年一路北9 小时前
基于 Maven + Docker 的 WebApp 打包与部署
docker·maven·web app
小白郭莫搞科技9 小时前
鸿蒙跨端框架Flutter学习:ListView卡片样式详解
linux·服务器·windows
栈低来信10 小时前
Linux设备模型
linux
晚风吹长发10 小时前
初步了解Linux中的信号捕捉
linux·运维·服务器·c++·算法·进程·x信号
九皇叔叔10 小时前
【05】SpringBoot3 MybatisPlus 添加(Mapper)
windows
阡陌..10 小时前
Linux下用docker调用pytorch-无法检测到cuda问题
linux·pytorch·docker