迁移前备份(完全没必要,但记住备份的命令很重要)
bash
# 备份某个文件夹,Windows 原生
robocopy "E:\My_Dream_2026_4_7\Flower_AI" "H:\Flower_AI_Backup" /E /COPYALL /R:3 /W:5 /LOG:H:\Backup_Log.txt
# 备份整个分区,如把D拷贝到M,把E拷贝到N
robocopy D:\ M:\ /E /COPYALL /R:3 /W:5 /LOG:C:\copy_D.txt
robocopy E:\ N:\ /E /COPYALL /R:3 /W:5 /LOG:C:\copy_E.txt
1. DiskGenius执行系统迁移
- 新硬盘未分区!或者只分了一个系统的区,不然影响新硬盘的C盘符无缝对接旧的D盘符
- DiskGenius勾选"完成后,更改电脑启动顺序"
- 点击"开始",选择 "热迁移" 模式,等待完成
2. 给新硬盘建立新 D、E 分区
- 打开磁盘管理,在新硬盘的未分配空间上右键 → 新建简单卷。
- 大小:先分配给新 D 盘(容量≥旧D盘已用空间,可留一点余量)
- 盘符:临时指定为 M
- 格式化 NTFS,卷标可以设 NewD 方便识别。
- 剩下的未分配空间再次新建简单卷,大小用满剩余全部,盘符临时指定为 N,卷标 NewE。
3.第五步:用 robocopy 复制数据
现在源和目标都非常明确:
bash
robocopy D:\ M:\ /E /COPYALL /R:3 /W:5 /LOG:C:\copy_D.txt
robocopy E:\ N:\ /E /COPYALL /R:3 /W:5 /LOG:C:\copy_E.txt
重要:执行前请关闭 Docker Desktop 和所有可能占用 D、E 盘文件的程序(IDE、资源管理器窗口等),以保证复制成功。
复制完成后检查日志末尾,确认 Files 数量一致,Skipped=0 或 FAILED=0。
4.第六步:交换盘符(最关键)
- 在磁盘管理中:
- 右键旧硬盘的 D 盘 → "更改驱动器号和路径" → 改为一个不冲突的临时号,比如 X。
- 右键旧硬盘的 E 盘 → 改为 Y。
(此时 D、E 两个盘符就空出来了)
- 右键 M: → 更改盘符为 D。
- 右键 N: → 更改盘符为 E。
- 检查一下 F 盘,如果它还是 F,就无需动它(旧 F 盘本来就在旧硬盘上,一直没变)。
5 验证
- 打开 E:\docker-desktop-data2\DockerDesktopWSL,My precious!。
- 启动 Docker Desktop,它应能正常启动并识别原有容器/镜像。
- 随意打开一个原装在 D 盘的软件,或点击桌面快捷方式,检查是否正常运行。
- 最后可在磁盘管理中删除旧硬盘的 G(原C)、X(原D)、Y(原E)分区(确认数据无需保留后),释放空间给旧硬盘扩容或备用。