はじめに
以前、windowsのストレージ容量を整理するという記事で、powershellでフォルダの容量を調べて、ストレージ容量の整理を行いました。(こちらの記事)
wslの容量もかなり大きかったので整理することにしました。

93.5GBもありました。
整理
docker
WSLに入って確認すると、dockerが結構な容量を占めていました。
$ sudo du /* | sort -hr | head -n 20
・・・
207202219       /mnt
・・・
98952796        /var/lib/dockerpruneをして以下のコマンドのようにdockerの容量をあけようとしました。(⚠️ちなみに、docker system prune -a --volumesはDockerの不要なリソースを一括削除するコマンドなので扱いに注意)
しかし、ここで、dockerを起動してもなぜか、Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?が発生する事象に遭遇。
$ sudo service docker start
 * Starting Docker: docker    
$ docker system prune -a --volumes
WARNING! This will remove:
  - all stopped containers
  - all networks not used by at least one container
  - all anonymous volumes not used by at least one container
  - all images without at least one container associated to them
  - all build cache
Are you sure you want to continue? [y/N] y
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?dockerdを別のタブにて動かす。
$ sudo dockerdその状態で再度実行すするとできました。
$ docker system prune -a --volumes
WARNING! This will remove:
  - all stopped containers
  - all networks not used by at least one container
  - all anonymous volumes not used by at least one container
  - all images without at least one container associated to them
  - all build cache
Are you sure you want to continue? [y/N] y
Deleted Containers:
430770c21336f4c9a3eec2111d9d0dd4631abf30ccc2a209c46c07e10b8d1b4e
8854038b2d6814e699628318b9ad39abf2bf19ba769f94404c87d2703cc921cb
・・・・
qfkz15yz3mfi1pljokwbs61l4
o9623dufh6vsfqxtrj9mrbyul
Total reclaimed space: 90.59GBまだ、wslの容量が減らなかった。(<user name>のところは各々のユーザー名を設定)
C:\Users\<user name>\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState
にext4.vhdxがあって、これがかなりの容量を占めていました。

調べると、powershellにてoptimize-vhdを使用する方法もありましたが、以下のエラーが出ました。
optimize-vhd : 用語 'optimize-vhd' は、コマンドレット、関数、スクリプト ファイル、または操作可能なプログラムの名前とし
て認識されません。名前が正しく記述されていることを確認し、パスが含まれている場合はそのパスが正しいことを確認してから、
再試行してください。なので、diskpartを使用する方法をとりました。
参考はこちら👉 https://qiita.com/gsh-kz/items/2e4d4aad8994233430ba
powershellを管理者で起動して、以下のコマンドを実行します。
> diskpart新しいウィンドウが立ち上がるので、以下のようにコマンドを打っていきます。(<user name>のところは各々のユーザー名を設定)
Microsoft DiskPart バージョン 10.0.22621.1
Copyright (C) Microsoft Corporation.
コンピューター: DESKTOP-SJU4RIG
DISKPART> select vdisk file="C:\Users\<user name>\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu20.04onWindows_79rhkp1fndgsc\LocalState\ext4.vhdx"
DiskPart により、仮想ディスク ファイルが選択されました。
DISKPART> attach vdisk readonly
  100% 完了しました
DiskPart により、仮想ディスク ファイルがアタッチされました。
DISKPART> compact vdisk
  100% 完了しました
DiskPart により、仮想ディスク ファイルは正常に圧縮されました。
DISKPART> compact vdisk
  100% 完了しました
DiskPart により、仮想ディスク ファイルは正常に圧縮されました。
DISKPART>exitPC再起動します。
これで、ストレージが減りました。
最後に
すっきりしました。
 
  
  
  
  