blockdiff_backupしたLVMスナップショットをXenServerにリストアする方法

Kazuho@Cybozu Labs: リモートからXenのDomUとかLVMやファイルを差分バックアップするスクリプトを書いた のリストア手順。

  1. どこにもアタッチされていない仮想ディスクを作成
  2. xe vdi-list して uuid からデバイスファイル名を特定
  3. lvchange -ay dev してLVをアクティブに
  4. バイスファイルに対して上掲ページのとおりに blockdiff_merge を実行
  5. lvchange -an dev して非アクティブに
  6. 仮想ディスクをVMにアタッチ

アタッチしたままやっちゃうと、LV内のデータのフラグの関係かなにかで read-only として取り扱われるっぽい。