ここでの vmdk ファイルは OS のイメージではなく、単にデータのみのイメージです。
OS イメージとしての vmdk ファイルを Xen 用の xva ファイルに変換する方法ではありません。
Windows ホストでの変換作業
XenCenter でストレージを作成
インポート先のストレージ(受け皿)を作成します。
- XenCenter の [Local storage] を選択します。
- [Add Disk...] をクリックします。
- 任意の Name とディスクサイズをインポートするイメージのサイズを指定します。これが小さいと途中で失敗してしまいます。
- [Add] をクリックして完了。
XenServer にログイン
Windows 共有フォルダをマウント
\\Winhost\Shared が共有されているとします。Windows 上のユーザー名は waccount とします。
# mount.cifs //Winhost/Shared /mnt -o user=waccount
ストレージのUUIDを確認
# xe vdi-list uuid ( RO) : aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee name-label ( RW): storage name-description ( RW): sr-uuid ( RO): xxxxxxxx-yyyy-zzzz-wwww-vvvvvvvvvvvv virtual-size ( RO): 21474836480 sharable ( RO): false read-only ( RO): false
さきほどの XenCenter で作成した Storage の Name とname-label が一致する uuid を調べます。
イメージをインポートする
# cd /mnt # xe vdi-import filename="hdd.img" uuid="aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"
ポイント
一旦、XenServer 上にコピーしようとすると親ホストに割り当てられている記憶領域の容量不足でできない。Windows ではなければ NFS マウントするなりでネットワーク越しにインポートを試みる。