Proxmox를 설치했습니다. vmdk를 lvm으로 가져오고 싶습니다. 프로세스는 다음과 같습니다.
$ qemu-img convert -p -f vmdk "IE11 - Win7-disk1.vmdk" -O raw "IE11 - Win7-disk1.raw"
그런 다음:
$ dd if="IE11 - Win7-disk1.raw" bs=1M|pv| dd of=/dev/mapper/pve-vm--103--disk--1
좋은 결과.
하지만 127GB 가상 드라이브에는 8.8GB의 데이터가 있습니다.
$ qemu-img info "IE11 - Win7-disk1.raw"
image: IE11 - Win7-disk1.raw
file format: raw
virtual size: 127G (136365211648 bytes)
disk size: 8.8G
원래 드라이브를 "dd"하면 127GB가 복사된 것을 볼 수 있으며 그 중 8.8G만 중요합니다. 이것은 매우 느립니다.
더 좋은 방법이 있나요?
답변1
더 빠른 방법은 사용하지 않는 것입니다dd
pv < "IE11 - Win7-disk1.raw" > /dev/mapper/pve-vm--103--disk--1
cat
직접 사용하는 것이 가장 빠릅니다.
cat "IE11 - Win7-disk1.raw" > /dev/mapper/pve-vm--103--disk--1
호출에서는 dd
512바이트 블록을 사용하므로 KB 읽기당 2개의 시스템 호출 또는 MB당 약 2000개의 읽기가 발생합니다. 그것으로 cat
당신은 아마도 MB 당 하나를 얻을 수 있습니다.
답변2
XenServer에서 Proxmox로 마이그레이션하는 중인데 이 솔루션을 찾았습니다.
아직 qcow2 파일이 없으면 먼저 가져오십시오(소스 파일이 원시 디스크 이미지가 아닌 경우 여기에서 다른 명령을 사용해야 할 수 있으므로 결과적으로 qcow2 파일을 가져오는 것이 중요합니다)
qemu-img convert rawimage.img -O qcow2 thinimage.qcow2
qcow2 이미지를 원본 이미지로 변환스파스 파일:
qemu-img convert -p -f qcow2 -O raw -t none -T none thinimage.qcow2 rawsparce.raw
VM의 Thin LV에 스파스 파일을 작성합니다.
dd if=rawsparce.raw of=/dev/mapper/pve-vm--100--disk--1 bs=8M conv=sparse status=progress
답변3
RAW 형식은 사전 할당만 지원하므로 qemu-img
.
vmdk
이미지 파일을 qcow2
사전 할당 없이 작동할 수 있는 형식 으로 변환 해 보세요 .