仮想マシンのHDDイメージを縮小
仮想マシンのHDDイメージを大きく取りすぎると、スパースファイルにすれば実際には容量を使わないものの、ファイルのコピーなど何かと不便なことがあります。
使用しないぶんを縮小しHDDを小さくするには、下記の手順をふみます
- あらかじめ、ゲストOSでHDDの最後に空き領域を作っておく。たとえば100GBのHDDを50GBに縮小したい場合、念のため先頭から45GB程度のパーティションに縮小し、後ろの残りを空き領域にしておく。
lvmの論理ボリュームを縮小する方法はこちら
- 下記の例のように、ddで先頭から50GBぶんの領域を書き出す
dd if=100GMHDD.img of=50GHDD.img bs=1M count=50000
- このままでも50GBHDD.imgは使用できますが、qemu-imgを使ってスパースファイルに変換するとさらに節約になります
qemu-img convert -f raw 50GHDD.img -O raw 50GHDDsparse.img
- 縮小後のHDDで仮想マシンを起動し、若干残っているHDDの空き容量まで45GBのパーティションを拡張します(残りが気にならなければやらなくて良い)