Hyper-Vを利用していると、ホスト側から確認する容量が増加してトラブルに繋がることが多々あります。本記事では、最速でゲストOSのデータ容量を削減する方法を解説します。
ゲストOSで「システムファイルのクリーンアップ」をする
まずはゲストOSでシステムドライブに対して「システムファイルのクリーンアップ」を実行します。Windowsのアップデートの後にバックアップとして残ってしまうので削除する必要があります。
ドライブを右クリックして、プロパティを選択します。
「ディスクのクリーンアップ」を選択します。
「システムファイルのクリーンアップ」を選択します。
可能な限り削除するファイルを選択して、Okをクリックします。
ホストOSで仮想イメージを最適化する
先ほどのシステムファイルのクリーンアップをしても、ホストOS側からするとデータ容量は削除されていません。そこで以下の最適化の対応が必要となります。
Hyper-Vでは、仮想イメージは以下のようにvhdxファイルとしてホストOSに保存されています。コマンドで利用するのでこのパスを取得しておきます。(シフト押しながら右クリックすると「パスのコピー」ができます。)
ホストOSでPowerShellを管理者で実行ます。
仮想イメージのマウント
以下のコマンドを打ち込みます。(C:\Users~ となっているところはご自身の環境に合わせてください)
Mount-VHD -Path "C:\Users\kanri\Documents\hyper-V\winSv2019\sv2019.vhdx" -ReadOnly
仮想イメージの最適化(圧縮)
以下のコマンドを打ち込みます。(C:\Users~ となっているところはご自身の環境に合わせてください)
Optimize-VHD -Path "C:\Users\kanri\Documents\hyper-V\winSv2019\sv2019.vhdx" -Mode Quick
仮想イメージのマウント解除
以下のコマンドを打ち込みます。(C:\Users~ となっているところはご自身の環境に合わせてください)
Dismount-VHD "C:\Users\kanri\Documents\hyper-V\winSv2019\sv2019.vhdx"
削減されたか確認
さてさて確認をしてみます。ほぼ利用していないゲストOSにも関わらず4GBも削減されていました。定期的に実行してホストOSを常にスリムな状態にしてトラブルを未然に防ぎましょう。
コメント