前段时间为了参加算法竞赛,在自己的win10台式机上安装了WSL ubuntu子系统用来开发程序,比赛需要提交docker镜像。反复build了十几个版本的镜像文件,虽然每次提交后我就把镜像删了,但是WSL占用的磁盘空间越来越大,我把WSL放在了D盘但是D盘已经红了,一看发现WSL占用了200多GB的磁盘空间,上网一顿搜索过后,我采用了以下方法清理空间(亲测有效):
1、清理无用的 Docker 镜像
打开WSL的linux终端,输入如下命令即可
docker image prune
2、压缩WSL磁盘空间
WSL使用虚拟硬盘(VHD)存储linux下的文件,先找到vhd文件位置,我这里放在了D盘:
先退出WSL系统,停掉WLS服务,打开PowerShell(管理员), 输入如下命令
wsl --shutdown
然后查看WSL中ubuntu的运行状态
wsl -l -v
接下来就可以压缩磁盘了
在PowerShell中逐一输入如下命令,每一步需要等待上一步完成后再执行,文件路径要换成自己的挂载路径
diskpart
select vdisk file="D:\WSL\ext4.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk
exit
执行完后,回到 windows打开此电脑,就可以看到磁盘空间释放了很多,红色已经消失了。