物理的なCENTOS6マシンをVirtualBoxVMに変換するのに問題があります。
私はこれに従いました: https://www.linux.org/threads/physical-to-virtual-p2v-using-virtualbox.10928/ これはClonezillaとVboxManageを使用します
Clonezillaでイメージを作成できますが、VBoxMangerを実行すると次のエラーが発生します。
VBoxManage convertfromraw --format VDI sda6.ext4-ptcl-img.uncomp.aa target.vdi
Converting from raw image file="sda6.ext4-ptcl-img.uncomp.aa" to file="target.vdi"...
Creating dynamic image with size 553033589122 bytes (527414MB)...
VBoxManage: error: VD: The given disk size 553033589122 is not aligned on a sector boundary (512 bytes)
VBoxManage: error: Error code VERR_VD_INVALID_SIZE at /home/vbox/vbox-5.2.26/src/VBox/Storage/VD.cpp(6220) in function int VDCreateBase(VDISK*, const char*, const char*, uint64_t, unsigned int, const char*, const VDGEOMETRY*, const VDGEOMETRY*, const RTUUID*, unsigned int, VDINTERFACE*, VDINTERFACE*)
VBoxManage: error: Cannot create the disk image "target.vdi": VERR_VD_INVALID_SIZE
「セクター境界(512バイト)に整列されていない」の解決策を検索したところ、bsとconv = syncフラグを指定してLinuxコマンドddを使用すると言われていましたが、bsはディスクよりも大きく設定されていました。私のディスクは大きすぎて、大きな数(600Gなど)のbsを使用できません。私が走るとき:
dd if=sda6.ext4-ptcl-img.uncomp.aa of=padded-sda6.ext4-ptcl-img.uncomp.aa bs=600G conv=sync
エラーが発生します:
dd: memory exhausted
512境界の問題をどのように回避しますか?
別のアプローチを試してください。
元のサイズとほぼ同じサイズの空のディスクイメージを作成します。疑わしい場合は、小さすぎるのではなく大きすぎます。 VMに接続します。
VM Clonezillaを含むレスキューディスクISOから起動します(Clonezilla LiveCD、GRML、Ubuntuも機能しますが、インターネットからClonezillaをインストールする必要があります)。
ゲストのネットワーク経由でホスト上のディスクイメージにアクセスできるようにします。 Linuxホストでは、sshfsを使用できます。Windowsホストの場合、ネットワーク共有が最も簡単な方法です。
VMのネットワークカードをホストオンリーまたはNATに構成します。ホストのIPを見つけます。
ゲストでClonezillaを実行し、この共有リソースを作業ディレクトリとしてマウントします(/home/partimag
)。 Clonezillaは、sshベースの共有とWindowsネットワーク共有(samba)の両方を支援します。
Clonezillaを使用して、イメージからゲストのディスクを復元します。