![디스크 크기를 유지하지 않고 qcow2 이미지에 파티션을 만드는 방법](https://linux55.com/image/174714/%EB%94%94%EC%8A%A4%ED%81%AC%20%ED%81%AC%EA%B8%B0%EB%A5%BC%20%EC%9C%A0%EC%A7%80%ED%95%98%EC%A7%80%20%EC%95%8A%EA%B3%A0%20qcow2%20%EC%9D%B4%EB%AF%B8%EC%A7%80%EC%97%90%20%ED%8C%8C%ED%8B%B0%EC%85%98%EC%9D%84%20%EB%A7%8C%EB%93%9C%EB%8A%94%20%EB%B0%A9%EB%B2%95.png)
UEFI 모드에서 Archlinux를 설치하고 싶어서 virt-manager에서 20GB 이미지를 만들었습니다.
그런 다음 가상 머신을 시작한 후 크기가 512MB이고 나머지 하나(19.5~GB) /dev/vda1
의 fdisk라는 이름의 파티션 2개를 만들었습니다./dev/vda2
/dev/vda1 유형을 fdisk에서 EFI로 변경한 다음 사용했습니다.
mkfs.fat -F32 /dev/vda1
그런 다음 다음 명령을 사용하여 /dev/vda2를 ext4로 포맷했습니다.
mkfs.ext4 /dev/vda2
그런 다음 아치를 성공적으로 설치했습니다. 산출
du -h -d 0 /
손님에게 주세요 5.2GB
. 하지만 호스트에 있는 이미지의 실제 디스크 크기는 20GB로 가상 크기와 동일합니다.
sudo qemu-img info archlinux.qcow2
image: archlinux.qcow2
file format: qcow2
virtual size: 20 GiB (21474836480 bytes)
disk size: 20 GiB
cluster_size: 65536
Format specific information:
compat: 1.1
lazy refcounts: true
refcount bits: 16
corrupt: false
qcow2 이미지에 Windows 10도 설치했는데 예상 디스크 크기는 9.73만 표시됩니다. Windows 설치 중에 추가 esp 파티션을 만들지 않았습니다. Windows를 BIOS 모드로 설치하고 seabios를 사용하여 부팅했기 때문입니다.
sudo qemu-img info win10.qcow2
[sudo] password for root:
image: win10.qcow2
file format: qcow2
virtual size: 100 GiB (107374182400 bytes)
disk size: 9.73 GiB
cluster_size: 65536
Format specific information:
compat: 1.1
lazy refcounts: true
refcount bits: 16
corrupt: false
그렇다면 내가 여기서 뭘 잘못하고 있는 걸까요? 디스크의 파티션 크기를 유지하지 않고 qcow2 이미지에 파티션을 만드는 방법은 무엇입니까?
답변1
@siduck76 님의 텔레그램 도움 덕분에 답을 찾았습니다.
sudo qemu-img convert -O qcow2 archlinux.qcow2 archlinuxComped.qcow2
인용하다:-https://www.jamescoyle.net/how-to/323-reclaim-disk-space-from-a-sparse-image-file-qcow2-vmdk