概要
日常的にWSL2を使用していますが、ボリュームサイズが増えてきて仮想ディスクファイルサイズ90Gを超えてきたので最適化(圧縮)しようと考えました。
下記の記事、他にもいくつか情報が見つかりましたが、 Optimize-VHD
コマンドが必要だが自分の環境に無いからどうする、的なケースがあるようです。
実際私の環境も該当コマンドは存在しませんでした。
環境
環境に依存する部分が大きいと思いますので、手元環境を示しておきます。(2024年3月15日時点)
- Windows11 Pro バージョン
- バージョン 23H2 (OSビルド 22631.3296)
インストールする
Windowsの設定関連インターフェイスは従来の「コントロールパネル」から「設定」へどんどん移行・変化している最中という印象です。
今回は「コントロールパネル」から操作しました。
コントロールパネルを起動
スタートメニュー→検索ボックスへ「コントロール」と入力するとコントロールパネルが見つかりますので、クリックして起動します。
※検索文字列は control
でも良いですし、「ファイル名を指定して実行」へ control
を指定しても起動可能です
Windowsの機能の有効化または無効化を起動
「プログラム」をクリック、「Windowsの機能の有効化または無効化」をクリックします。
機能をインストール
「Windowsの機能」ダイアログボックス内の Hyper-V
以下の機能をチェックしてインストールします。
再起動が必要でした。
実行
管理者としてPowerShellを起動します。
現状のファイルサイズを確認
PS > dir
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2024/03/15 11:34 97638154240 ext4.vhdx
最適化実行
プログレスバーが表示されました。1分未満ぐらいで完了しました。
PS > Optimize-VHD .\ext4.vhdx -Mode Full
結果確認
PS > dir
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 2024/03/15 11:45 82635128832 ext4.vhdx
事前に不要なファイルは削除してありまして、15,003,025,408バイト減りました。
>>> (97638154240-82635128832)/1024**3
13.97265625
およそ14GB圧縮されたという感じでしょうか。
WSLも通常通り起動できることを確認し、完了です。