この記事はアドベントカレンダー2022の5日目の記事です。
こんにちは。20Bの@Rasです。初めましての方はぜひ過去のブログもご覧ください!
→ 過去のブログ一覧
今回はあまりいいネタがなかったので少し前に行ったWSL2のサイズを削減した話を書きました。
ほとんど https://scrapbox.io/ras0q/WSL2サイズ削減記 の転記です。
ここから日記
ある日インストールされているアプリの一覧を見ていた時のこと、、、
「Ubuntu on Windows」が75GB近くも占めていることに驚きます
(削減する前のスクショは忘れました)

別に空きは十分あったため特に困ってはいませんでしたが、流石にでかすぎやろ!!!!!と思ったので削減に取りかかります。
WSL2 のディスクサイズを削減する - Qiita
を見てとりあえず最適化を行います。(Optimize-VHDコマンド)
この時点で73.5GB→69.2GBになります。


コマンドを1つ実行するだけで4GB削減できました。
もう少し削減した感が欲しいのでWSL2本体の不要ファイルを削除していきます。
やったことリスト
- dockerの整理
- ※WSL2に直接dockerを入れています(docker desktopを使っていない)
- docker desktopで入れてるとdocker-desktop-dataっていう別のdistroが軽くなるらしい
 
- docker system dfで確認
- 気になるものがあればdocker container prune,docker image prune,docker volume pruneを実行
 
- ※WSL2に直接dockerを入れています(docker desktopを使っていない)
- dustでホームディレクトリのサイズを確認し、使っていないのに容量を占めている子ディレクトリを削除
- brew install dust
- Gitレポジトリ
- ghq+fzfで管理しているので以下のコマンドが便利です。
- ghq list --full-path | fzf --preview "cd {} && git status -s && ls -a {}" | xargs rm -r
- 差分&認証情報がないことを確認してインタラクティブに削除できます。
 
- node_modules
- ~/.cache
- (ホームディレクトリ以外も見るとなお良し、システムファイルの削除には注意)
 
- コマンドのインストールは基本brewで行っているので使っていないものを削除
- brew autoremove
- brew leavesのうち使っていないものを- brew remove <コマンド>
 
- brewでできないバージョン管理はasdfで行っているので、これも使っていないものを削除します
- asdf listで各プラグインのインストール済みバージョンを確認できます
 
一旦ここまでで再度Optimize-VHDを実行します。
73.5GB→69.2GB→50.4GBになります。
最初の段階から20GB以上削減できました🙌

ここで問題が発生します。

WSL、壊れた、、?
以下の記事で何とか一命をとりとめます。
WSLが[プロセスはコード 4294967295 で終了しました] - @ledsun blog
アプリ一覧で見ると若干の誤差?はありますが50.9GBに削減できました。

やったね!
明日の担当者は@helgevです。お楽しみに!
 
		