Bag of ML Words

ML = Machine Learning, Music Love, and Miscellaneous things in daily Livings

Windows 11 Pro - WSL2 - ubuntu - dockerで容量が圧迫される!

気づくと900GあるCドライブがパンパンになっていてびっくり。

細かくduコマンドなどで追跡していくと、WSL-Ubuntu-Docker周りですくなくとも200G以上奪われていることが判明。

 

どちらも、

 

たとえばDockerは、docker rmiでイメージを消しても、WSL上のext4ファイル自体は「解放されない」(!?!?)というイシューがある。

wsl2でdockerが占有する容量の開放 - Qiita

 

また、Ubuntuのイメージも同じようなことが起こっている?みたいで

【WSL2】容量が圧迫されているのでディスクスペースを解放したい - アルゴリズム弱太郎

 

これらのファイルの圧縮方法として、diskpartというコマンドを利用して、成功したので記録しておきます

 

ターゲット

docker: C:\Users\USERNAME\AppData\Local\Docker\wsl\data\ext4.vhdx

ubuntu: C:\Users\USERNAME\AppData\Local\Packages\CanonicalGroupLimited.Ubuntuほげほげ\LocalState\ext4.vhdx

 

やり方

【WSL2】容量が圧迫されているのでディスクスペースを解放したい - アルゴリズム弱太郎

上に倣います。

 

(i) 管理者モードでcmd.exeを起動します

(ii) diskpart コマンドを実行します

(iii) プロンプトがでたら、流れとしては対象ファイルのselect, attach, compact, detachをする

(iii-a) DISKPART> select vdisk file="ターゲットファイルパス"

(iii-b) DISKPART> attach vdisk readonly

(iii-c) DISPART > compact vdisk

(iii-d) DISKPART > detach vdisk

(iii-e) DISKPART> exit