当前位置: 首页 > java >正文

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

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

一、情景描述

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

先用wsl -l -v指令查看一下当前已安装的 wsl。
查看 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 名称与目录位置根据自己情况进行修改)。

wsl --export docker-desktop-data D:\WSL\Docker\docker-desktop-data.tar

​​拷贝 docker-desktop-data

2. 注销实例

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

wsl --unregister docker-desktop-data

注销 docker-desktop-data

3. 导入数据

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

wsl --import docker-desktop-data D:\WSL\Docker\docker-data D:\WSL\Docker\docker-desktop-data.tar --version 2

导入 docker-desktop-data

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

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

(二)迁移Ubuntu

迁出Ubuntu也是类似的过程。

1. 导出 tar 包

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

wsl --export Ubuntu-18.04 D:\WSL\Ubuntu-18.04\Ubuntu-18.04.tar

Ubuntu 导出

2. 注销实例

执行命令如下,注销 Ubuntu。

wsl --unregister Ubuntu-18.04

注销 Ubuntu

3. 导入数据

导入数据。

wsl --import Ubuntu-18.04 D:\WSL\Ubuntu-18.04 D:\WSL\Ubuntu-18.04\Ubuntu-18.04.tar --version 2

Ubuntu 导入

http://www.xdnf.cn/news/17020.html

相关文章:

  • 每日面试题20:spring和spring boot的区别
  • Spring MVC 九大组件源码深度剖析(一):MultipartResolver - 文件上传的幕后指挥官
  • Go语言实战案例:TCP服务器与客户端通信
  • Uniapp一根数据线实现真机调试运行【uniapp如何把项目运行在手机上】
  • 昇思学习营-开发版-模型推理和性能优化
  • Kaggle 竞赛入门指南
  • Jetson Orin NX/NANO+ubuntu22.04+humble+MAVROS2安装教程
  • LeetCode - 合并两个有序链表 / 删除链表的倒数第 N 个结点
  • Nginx相关实验(2)
  • Linux服务器运维告警系统搭建完整指南
  • 使用AssemblyAI将音频数据转换成文本
  • Elastic 9.1/8.19:默认启用 BBQ,ES|QL 支持跨集群搜索(CCS)正式版,JOINS 正式版,集成 Azure AI Foundry
  • uni-app学习笔记01-项目初始化及相关文件
  • 控制建模matlab练习10:滞后补偿器
  • sqli-labs:Less-25关卡详细解析
  • Go语法:闭包
  • 【银行测试】银行票据项目业务+票据测试点分析(二)
  • Android 之 网络通信(HTTP/TCP/UDP/JSON)
  • LeetCode Hot 100,快速学习,不断更
  • MySQL连接算法和小表驱动大表的原理
  • Parcel 使用详解:零配置的前端打包工具
  • 力扣经典算法篇-39-有效的数独(二维数组和三维数组的应用)
  • 机器学习第三课之逻辑回归(三)LogisticRegression
  • 【Linux】linux基础开发工具(三) 版本控制器Git、调试器 - gdb/cgdb使用、一些实用的调试技巧
  • 关于逻辑回归的相关知识大全
  • 【数据分享】南京诗歌文学地理数据集(获取方式看文末)
  • Mongo索引
  • SpringBoot项目数据脱敏(自定义注解)
  • PPT自动化 python-pptx - 10 : 表格(tables)
  • kotlin kmp 跨平台环境使用sqldelight