清理WSL2不释放的空间 - wxtt-github/blog GitHub Wiki

由于WSL2的磁盘只会自动扩容,不会自动减容,因此删除文件后并不会减小你的磁盘,需要压缩磁盘。

搜索并找到 ext4.vhdx 文件。

wsl -l -v
C:\Users\richa\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\ext4.vhdx
# 关闭 WSL2 中的 linux distributions
wsl --shutdown
# 备份指定的 Linux distribution 到指定的位置,可跳过
wsl --export Ubuntu-20.04 D:\Ubuntu-20.04.tar
# 关闭 WSL2 中的 linux distributions
wsl --shutdown
# 运行管理计算机的驱动器的 DiskPart 命令
diskpart
# 选择虚拟磁盘文件
select vdisk file="C:\Users\richa\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\ext4.vhdx"
# 压缩文件
compact vdisk
# 压缩完毕后卸载磁盘
detach vdisk

上述操作执行完毕,WSL2 删除文件后空出来的磁盘空间就被释放了。