必须用wsl --export导出ubuntu为tar包,再wsl --unregister卸载原发行版释放c盘空间,最后wsl --import到d盘并配置wsl.conf恢复默认用户,全程需先wsl --shutdown并退出docker desktop。

Win11下C盘空间告急,WSL2的Ubuntu子系统占了几十GB却删不掉——因为它的整个根文件系统就锁在C盘用户目录下的ext4.vhdx虚拟磁盘里,Linux内删除文件根本不会自动释放Windows端空间。必须用官方导出→导入流程,把发行版完整搬到D盘,同时重建精简的虚拟磁盘。
确认当前状态并彻底关闭WSL
以管理员身份打开PowerShell,执行:wsl --list --verbose,确认Ubuntu发行版名称(如Ubuntu-22.04)和状态为Stopped。若显示Running,先执行wsl --shutdown强制终止所有实例。
这一步必须做,否则导出时可能损坏tar包或丢失未写入缓存的数据。特别注意:Docker Desktop也依赖WSL2,迁移前务必退出Docker Desktop桌面应用,否则wsl --shutdown可能失败。
导出Ubuntu发行版为tar包
在PowerShell中执行(将Ubuntu-22.04替换为你自己的发行版名):wsl --export Ubuntu-22.04 D:\wsl-backup\ubuntu-22.04.tar
命令会自动创建D:\wsl-backup目录并写入tar包。如果D盘没有wsl-backup文件夹,它会自动新建;但【D盘必须有足够空间容纳当前Ubuntu全部数据,建议预留比wsl --list --verbose显示的SIZE大20%的空间】。导出过程无进度条,耐心等待——5GB数据约需1~2分钟,30GB可能超过10分钟,终端光标静止不等于卡死。
卸载原发行版并清理C盘残留
执行:wsl --unregister Ubuntu-22.04
该命令立即删除C盘中的LocalState\ext4.vhdx及全部配套文件,是释放C盘空间的关键动作。卸载后,用文件管理器手动检查路径C:\Users\你的用户名\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu*是否已彻底消失——如果还在,说明卸载失败,需重启再试或查杀占用进程。
此时C盘空间尚未立刻增加,因为Windows文件系统回收需要时间,但虚拟磁盘文件已被标记为可覆盖。别急着清空回收站,先完成导入再统一清理。
Ubuntu 26.04 LTS(代号“Resolute Raccoon”)是Canonical于2026年4月23日发布的下一代长期支持版操作系统,提供长达10年的技术支持。它搭载Linux 7.0内核与GNOME 50桌面环境,全面转向Wayland协议,并引入Rust重写的核心工具以增强安全性。官方提供适用于AMD64和ARM64架构的桌面及服务器ISO镜像,是追求前沿技术与极致稳定的开发者
在D盘导入新发行版
第一步:在D盘创建目标文件夹,例如D:\wsl-distros\ubuntu-22.04;
第二步:执行导入命令(注意路径中不能有中文或空格):wsl --import Ubuntu-22.04 D:\wsl-distros\ubuntu-22.04 D:\wsl-backup\ubuntu-22.04.tar --version 2;
第三步:导入完成后,运行wsl -d Ubuntu-22.04启动新实例——你会看到提示符变成root@DESKTOP-xxx:,说明默认用户已重置为root;
第四步:执行exec sudo usermod -aG sudo $USER && exit退出,再重新进入,即可恢复普通用户权限。这一步不可跳过,否则后续apt、systemctl等命令会因权限不足失败。
修复默认用户并验证功能
方法一(推荐):在新Ubuntu中执行:echo -e "[user]\ndefault=你的原用户名" | sudo tee /etc/wsl.conf,然后关闭终端,再次运行wsl --shutdown,再启动即可直接登录原用户。
方法二:若记不清原用户名,先执行cat /etc/passwd | grep "/home" | cut -d: -f1列出所有非root用户,选一个常用名填入上式;
【切勿直接编辑/etc/wsl.conf后不执行wsl --shutdown就重开终端,配置不会生效】。验证是否成功:运行whoami应返回你的原用户名,且ls ~能看见原/home/用户名下的所有文件和隐藏配置(如.bashrc、.ssh)。










