VHD(X)イメージを圧縮する
fuji44
VHD/VHDXイメージの未使用領域をゼロフォーマットして最適化処理をすることで圧縮することができる。
具体的には以下のような流れ。
- VHD/VHDXイメージが容量固定の場合は容量可変に変換。
- マウントしたドライブの未使用領域をゼロフォーマット。
- VHD/VHDXイメージを最適化。
説明するコマンドはすべて管理者権限のPowerShellで実行する。
オプション:VHD/VHDXイメージを容量可変に変換
VHD/VHDXイメージが容量固定の場合はConvert-VHD
コマンドやHyper-Vマネージャを使って容量可変に変換する。
VHDの場合は、より改善されたフォーマットのVHDXへの変換も併せて行うといい。
Convert-VHD .\target.vhd .\target.vhdx -VHDType Dynamic
未使用領域をゼロフォーマット
フォーマットするために、VHD/VHDXイメージをマウントする。
Mount-VHD .\target.vhdx
次に、SDeleteを入手してマウントしたドライブのルートを指定してゼロフォーマットする。ドライブレターは事前に確認して指定すること。
.\sdelete64.exe -z d:
SDeleteはChocolateyでもインストールできます。
フォーマットが終わったらディスマウント(アンマウント)する。
Dismount-VHD .\target.vhdx
VHD/VHDXイメージの最適化
Optimize-VHD .\target.vhdx -Mode Full
最適化が完了すればイメージサイズが小さくなっているはず。