40. Create and Boot a Virtual Machine
디스크 이미지 다운로드
Ubuntu는 가상 머신에 적합한 사전 설정된 클라우드 이미지를 제공합니다. wget으로 최소 클라우드 이미지를 다운로드합니다:
wget https://cloud-images.ubuntu.com/minimal/releases/noble/release/ubuntu-24.04-minimal-cloudimg-amd64.img
다운로드 파일 크기: 227 MB
이미지 무결성 확인
SHA256 체크섬 파일로 이미지 진위 확인:
wget https://cloud-images.ubuntu.com/minimal/releases/noble/release/SHA256SUMS
sha256sum -c SHA256SUMS 2>&1 | grep OK
"OK"가 출력되면 이미지가 손상되지 않았음을 의미합니다.
디스크 이미지 검사 및 크기 조정
QEMU 도구로 이미지 속성 확인:
qemu-img info ubuntu-24.04-minimal-cloudimg-amd64.img
기본 3.5 GB 가상 크기는 추가 소프트웨어 설치에 부족합니다. 10 GB로 확장:
qemu-img resize ubuntu-24.04-minimal-cloudimg-amd64.img 10G
가상 크기가 10 GiB로 증가하더라도, 실제 디스크 사용량은 가상 머신이 추가 공간을 사용할 때만 증가합니다.
스토리지 풀 생성 및 디스크 이미지 복사
이미지를 기본 libvirt 스토리지 위치에 복사합니다:
sudo cp ubuntu-24.04-minimal-cloudimg-amd64.img /var/lib/libvirt/images/
가상화 도구는 일반적으로 /var/lib/libvirt에 디스크 이미지를 관리합니다.
가상 머신 빌드 및 실행
virt-install로 VM 생성 및 실행:
virt-install --osinfo ubuntu24.04 --name ubunt1 --memory 1024 --vcpus 1 \
--import --disk /var/lib/libvirt/images/ubuntu-24.04-minimal-cloudimg-amd64.img \
--graphics none
주요 파라미터: OS 변형, VM 이름, 메모리 할당, CPU 수, 디스크 경로. --import 플래그는 이미지에 이미 OS가 포함되어 있으므로 OS 설치를 건너뜁니다.
콘솔 종료: Ctrl + ]
가상 머신 관리
모든 VM 목록:
virsh list --all
정상 종료:
virsh shutdown ubunt1
강제 종료:
virsh destroy ubunt1
VM 완전 제거:
virsh undefine ubunt1 --remove-all-storage
Cloud-Init으로 재생성
자동 root 비밀번호 생성 옵션으로 VM 재생성:
virt-install --osinfo ubuntu24.04 --name ubunt1 --memory 1024 --vcpus 1 \
--import --disk /var/lib/libvirt/images/ubuntu-24.04-minimal-cloudimg-amd64.img \
--graphics none --cloud-init root-password-generate=on
Cloud-init이 설치 중 표시되는 임의 비밀번호를 생성합니다. 최초 로그인 시 즉시 비밀번호 변경이 필요합니다.
OS 변형 처리
새롭거나 목록에 없는 OS 변형의 경우 자동 감지 사용:
virt-install --osinfo detect=on --name ubuntu1 --memory 1024 --vcpus 1 \
--import --disk /var/lib/libvirt/images/ubuntu-24.04-minimal-cloudimg-amd64.img \
--graphics none --cloud-init root-password-generate=on
또는 환경 변수로 엄격한 OS 요구사항 비활성화: VIRTINSTALL_OSINFO_DISABLE_REQUIRE=1