15.5.15. blockcommit を使用したバッキングチェーンの短縮化

このセクションでは、virsh blockcommit を使用してバッキングチェーンを短縮する方法について説明します。バッキングチェーンの背景情報については、「ライブブロックコピーによるディスクイメージの管理」を参照してください。
blockcommit は、チェーンの一部にあるデータをバッキングファイルにコピーし、コミットされた部分をバイパスするためにチェーンの残りの部分をピボットします。たとえば、以下が現在の状態であるとします。
      base ← snap1 ← snap2 ← active.
blockcommit を使用して、snap2 のコンテンツを snap1 に移行します。これにより、チェーンから snap2 を削除でき、より迅速にバックアップを作成することができます。

手順15.2 virsh blockcommit

  • 次のコマンドを実行します。
    # virsh blockcommit $dom $disk -base snap1 -top snap2 -wait -verbose
    snap2 のコンテンツが snap1 に移行します。以下のようになります。
    base ← snap1 ← active。Snap2 は無効になり、削除することができません。

    警告

    blockcommit は、-base オプションに依存するすべてのファイル を破損させます (-top オプションに依存するファイルを除く。これらは base を指しているため)。これを防ぐには、複数のゲストが共有するファイルへの変更をコミットしないでください。-verbose オプションを使用すると、進捗状況が画面に出力されます。