Per ridurre lo spazio disco utilizzato dagli ambienti wsl2 non è sufficiente rimuovere i file all'interno del sistema linux: poi bisogna anche compattare il disco virtuale.
Ecco qui i passaggi da fare:
PS C:\Users\fabio> wsl --shutdown
PS C:\Users\fabio> diskpart
DISKPART> select vdisk file="C:\Users\fabio\WSL_images\Silmaril-deb\ext4.vhdx"
DISKPART> compact vdisk
In alcuni casi (ad esempio se si utilizza un disco virtuale differente da quello dell'istanza WSL) non è sufficiente il compact perché WSL non rilascia davvero lo spazio liberato sul disco secondario, quindi è necessario prima "riempirlo di zeri"
cd /mnt/wsl/shared
dd if=/dev/zero of=zero.fill bs=1M
rm -f zero.fill
A questo punto si può procedere con il compact
fonte: https://stephenreescarter.net/how-to-shrink-a-wsl2-virtual-disk/
Anche docker su WSL utilizza un disco vhdx per archiviare le varie immagini che quindi nel tempo cresce notevolmente.
Il disco si trova in:
%USERPROFILE%\AppData\Local\Docker\wsl\data
Per ridurne le dimensioni:
docker-compose down
docker system prune -a
Chiudere docker-desktop
Eseguire con i permessi di amministratore un terminale e quindi:
DISKPART> select vdisk file="C:\Users\...\AppData\Local\Docker\wsl\data\ext4.vhdx"
DISKPART> compact vdisk
Riavviare docker-desktop e nella cartella c:\docker\txd_docker:
docker-compose pull
docker-compose up -d