web-dev-qa-db-ja.com

Linux VM用のHyper-V動的サイズのVHDXファイルを適切に圧縮する方法は?

Hyper-VVMにUbuntu18.04 LTSをインストールしましたが、VHDXファイルが異常に膨大な量のディスク領域を占有していることに気付くまではすべて問題ありませんでした。 VM内から、システムに必要なスペースは10GB未満であることがわかります。

VM disk space usage

ただし、Windowsホストでは、VHDXファイルは20GBを超えるディスク領域を占有します。

Host disk space usage

これは、次の手順でディスク圧縮を実行した後です。

  1. vM内で、Sudo fstrim /を実行します
  2. vMをシャットダウンし、管理者権限でPowerShellコンソールを起動します
  3. Mount-VHD '.\ubuntu 18.04 lts.vhdx' -ReadOnlyを使用してVHDXをマウントします
  4. Optimize-VHD '.\ubuntu 18.04 lts.vhdx' -Mode FullでVHDXを圧縮します
  5. Dismount-VHD '.\ubuntu 18.04 lts.vhdx'を使用してVHDXをアンマウントします

VHDXのサイズが以前の23GBから現在21GBに縮小されたため、ある程度機能しますが、VMの内部では、現在使用されているスペースが10GB未満であることを示しているため、これはほとんど圧縮されていません。サイズで。

Hyper-V管理UIからDiskCompact機能を実行しようとしましたが、効果がありませんでした。では、この巨大なVHDXサイズの原因は何か、そしてそれを適切に圧縮するにはどうすればよいのでしょうか。ありがとう。

1
hellopeach

私はいくつかの問題に直面しました、私は私がすでに知っているか、グーグルを通して見つけたすべてを試しました。最後に、私はそれをこのように解決します:

  • いくつかのトリム、ddゼロ化、その他の魔法の後(これらが問題かどうかはわかりません)
  • 必要なものより少し大きい新しいvhdxを作成しました(+ 1GB)
  • gpartedライブCDから起動
  • 最後に、このツールを使用してブートパーティションとデータパーティションを新しいvhdxにコピーしました。
  • 新しいhddを起動順序リストの一番上に移動するか、VMから切り離します
  • 私は今幸せです :)
1