wsl空间清理

5,572 阅读1分钟

wsl使用久了,发现空间占用越来越大,C盘都不够用了,清理一波~ 具体能清理多少,大头还看自己清理了多少无用文件

  1. apt缓存清理
sudo apt-get clean
sudo apt-get autoclean
sudo apt-get autoremove
  1. 移除无用的多语言、日志、man、文档等
sudo apt install localepurge
sudo journalctl --vacuum-size 10M
sudo find /usr/share/doc -depth -type f -delete
sudo rm -rf /usr/share/man/* /usr/share/groff/* /usr/share/info/* /usr/share/lintian/* /var/cache/man/*
  1. 垃圾文件清理
rm -r ~/.local/share/Trash/info/ && rm -r ~/.local/share/Trash/files/ 
  1. docker 清理
docker system prune
docker volume prune
docker network prune
docker container prune
docker image prune -a // -a would clean image without linking a container
  1. 使用 ncdu 工具分析空间占用情况,找出占空间的文件并按需移除。(题外话,前端用yarn累积缓存近10G...还是pnpm香)
sudo apt install ncdu

ncdu
ncdu --exclude /mnt // wsl下排除/mnt
  1. 清理完后,还需主动压缩wsl空间。diskpart操作有风险,注意备份ext4.vhdx
# powershell run as adminitrator
wsl --shutdown
diskpart
# 执行diskpart操作,替换[USER]及[UbuntuonWindows](wsl包名可能不一样)
select vdisk file="C:\Users[USER]\AppData\Local\Packages\CanonicalGroupLimited.[UbuntuonWindows]_79rhkp1fndgsc\LocalState\ext4.vhdx"
attach vdisk readonly
compact vdisk
detach vdisk
exit

参考:

blakey.co/blog/reduce…

superuser.com/a/1734392