仮想マシンのディスクを削除した後に空き領域を復元する方法は?

仮想マシンのディスクを削除した後に空き領域を復元する方法は?

こんにちは皆さん、頑張ってください。


だから最近私は何かをしていました。万座郎 21.2.5最新のアップデートホスティングWindows 11ゲスト仮想マシンは以下で実行されます。qemu/kvmそしてライブラリ仮想マシンそして動的にサイズ変更された仮想ディスク、ゲスト(Win 11)にいくつかの重いソフトウェアをインストールした後ディスク容量がいっぱいです。空き容量が14MBしかないので、libvirtのGUIを使ってVMを削除して発見しました。空き容量を返せませんでした。確かな仮想ディスクを削除しました。。 Vmが使用するホストパーティションの形式は次のとおりです。BTRFS


みんなありがとうございます!ありがとうございます。

ベストアンサー1

Linuxのbtrfsがディスク領域を解放しない3つの主な方法があります。

  1. 削除したファイルはまだ開いています。これはbtrfsに固有のものではなく、ほとんどのUnixスタイルのオペレーティングシステムに当てはまります。 Linuxでは、削除されたファイルを引き続き使用できます。最後のユーザーが消えると完全に解放されます。 VMを削除するためにlibvirtを使用することがこの傾向にあるかどうかはわかりません。次のようにして、これらのケースであることを確認できます。 lsof full/path/imagefile

  2. btrfsはまだこれらのブロックを解放する機会がありませんでした。これには少し時間がかかりますが、通常は数分を超えません。ディスク容量が不足すると、このバックグラウンド操作が中断される可能性があります。btrfs fi sync .イメージファイルがあるディレクトリで実行できます。それでも役に立たない場合は、他のファイルを削除してバランス操作を実行する必要があります。

まれに、最初に、および-musage0/または-dusage0オプション(2つの別々のコマンドに対して)を使用して、「実際の」バランス操作のためのスペースを作成する必要があるかもしれません。たとえば、次のようになります。

btrfs balance start -musage=0 .
btrfs balance start -dusage=0 .
btrfs balance start .
  1. 最後に、同じボリュームにbtrfsスナップショットがある可能性があります。これはボリュームの状態が安全であることを意味するため、削除したファイルの数に関係なく、スナップショットは削除したいファイルを参照し続けます。この場合、スナップショットを削除する必要があります(削除できる他の項目も考慮する必要があります)。確認btrfs subv list .してbtrfs subv del (snapshotname)注文してください。

おすすめ記事