나는 qemu-4.0.0.tar.xz
에서 다운로드했다여기필요한 모든 종속성을 설치한 후 실행 $ ./configure --target-list=aarch64-softmmu
하여 QEMU
설치했습니다. $ qemu-system-aarch64 --version
반환된 설치를 다시 확인했습니다 QEMU emulator version 4.0.0
Copyright (c) 2003-2019 Fabrice Bellard and the QEMU Project developers
. $ sudo qemu-img create -f qcow2 alpine-img.qcow2 10G
반환된 디스크 이미지를 빌드하는 작업을 진행합니다 Formatting 'alpine-img.qcow2', fmt=qcow2 size=10737418240 cluster_size=65536 lazy_refcounts=off refcount_bits=16
. 나는 다운로드 alpine-virt-3.12.1-aarch64.iso
했고alpine-standard-3.12.1-aarch64.iso
여기두 가지 모두 실행하면 설치를 계속하지 않고 영원히 머무르며 를 표시하는 창이 sudo qemu-system-aarch64 -cdrom alpine-image.iso -machine virt -m 1024 -smp 4 -hda alpine-img.qcow2
나타납니다 . 어떤 도움이라도 대단히 감사하겠습니다!QEMU
compat_monitor0 console
QEMU 4.0.0 monitor - type 'help' for more information
(qemu)
편집 1:다음 명령도 작동하지 않습니다.$ sudo qemu-system-aarch64 -boot d -cdrom alpine-standard-3.12.1-aarch64.iso -machine virt -m 1024 -smp 4 -hda alpine-img.qcow2
편집 2:창을 열지만 이번에는 다음을 표시하는 -device virtio-gpu-pci
명령을 추가합니다 .sudo qemu-system-aarch64 -boot d -cdrom alpine-standard-3.12.1-aarch64.iso -machine virt -m 1024 -smp 4 -hda alpine-img.qcow2 -device virtio-gpu-pci
게스트가 (아직) 디스플레이를 초기화하지 않았습니다.. 우편여기설명하다"이것은 실수가 아닙니다. 이는 게스트 운영 체제가 에뮬레이트된 그래픽 카드 및 디스플레이 출력을 여는 데 필요한 작업을 완료하지 않았음을 알려주는 QEMU입니다. 이 경우 가능한 원인은 이 마더보드 모델에서 실행되지 않는 커널을 실행하려고 하여 실행되기 전에 충돌이 발생한다는 것입니다. 커널에 내장 그래픽 지원이 없고 단순히 직렬 콘솔로 출력하는 경우에도 이 메시지를 볼 수 있습니다."
편집 3:옵션은 -nographic
다음에서 제공됩니다.여기작동하지 않는 것 같습니다.
편집 4:동일한 과정 ubuntu-16.04.7-server-arm64.iso
과 동일한 결과를 시도했는데... 빌드에 문제가 있는 것 같습니다 QEMU
.
편집 5:이전 버전을 사용해야 하는 이유가 있는지 질문을 받았습니다 QEMU
. 버전과 관련된 문제도 QEMU
발생했기 때문입니다.v5.2.0-rc4
편집 6:게시글의 답변을 꼭 읽어보세요여기. 내 결론은 이 .iso
문서는 잊어버리라는 것입니다. 대신 다음 위치 에서 vmlinuz-lts
커널 및 initramfs-lts
initrd 파일을 다운로드하세요.여기그러면 다음과 같습니다:
qemu-system-aarch64 -machine virt -m 1024 -cpu cortex-a57 -kernel vmlinuz-lts -initrd initramfs-lts -append "console=ttyAMA0 ip=dhcp alpine_repo=http://dl-cdn.alpinelinux.org/alpine/edge/main/" -nographic
커널 및 initrd 파일과 동일한 디렉토리에 있는지 확인하고 해당 -nographic
옵션을 사용하십시오. 그렇지 않으면 작동하지 않습니다. 정확히 무슨 일이 일어났는지 자세히 파악하지 못했습니다. 일단 답변을 추가하겠습니다. 그럼에도 불구하고 위의 명령을 사용하면 결국 Alpine Linux 환영 페이지가 표시됩니다!
편집 7:modloop
위의 명령은 시작하는 동안 문제를 해결하지 못합니다 . modloop
알파인 LTS 또는 엣지 버전을 찾을 수 있습니다여기. 따라서 명령을 로 변경해야 합니다 qemu-system-aarch64 -machine virt -m 1024 -cpu cortex-a57 -kernel vmlinuz-lts -initrd initramfs-lts -append "console=ttyAMA0 ip=dhcp alpine_repo=http://dl-cdn.alpinelinux.org/alpine/edge/main/ modloop=http://dl-cdn.alpinelinux.org/alpine/edge/releases/aarch64/netboot/modloop-lts" -nographic
. 당신은 확인할 수 있습니다여기자세한 내용은.
편집 8:.-hda
qemu-img
나는 달려가서 선택의 여지가 하나뿐이라는 alpine-setup
것을 알게 되었습니다 . 그래서 나는 그것을 선택하고 , 내 선택은 ,, .... 이라는 질문을 받습니다 . 나는 선택 하고 얻습니다 . 이것이 실제로 내가 지정한 디스크 이미지와 관련이 있습니까? 그런데 이 옵션이 없으면 알파인을 설치하는 데 문제가 없습니다. 따라서 설치를 위해서는 설치 옵션(아마도 )을 명령 에 전달해야 합니다 .Available disks are:
vda
How would you like to use it?
sys
data
lvm
sys
ERROR:unable to select packages:
syslinux (no such package):
required by: world[syslinux]
-hda
-hda
qemu
편집 9: 이것링크는 Alpine이 기본적으로 Syslinux를 부트로더로 사용함을 보여줍니다. 그리고 패키지도 가능한거 같던데여기, apk add syslinux
Alpine을 사용하면 아무것도 반환되지 않습니다... Alpine on Disk 설치 단계에서 분명히 syslinux를 검색했지만 찾을 수 없습니다...
편집 10:@rudib의 답변은 나에게 매력처럼 작용했습니다. 파일은 패키지에서 QEMU_EFI-pflash.raw
찾을 수 있습니다.rpm
여기. 해당 항목을 찾아 파일을 aarch64
추출 하면 됩니다.QEMU_EFI-pflash.raw
편집 11:마지막 참고 사항: 공유 디렉터리에 쓰려면 호스트 시스템에서 QEMU
루트( )로 실행해야 합니다. 대답은 보안 모델을 사용한다는 점을 고려하세요! 이에 대한 자세한 내용은 다음을 참조하세요.sudo
passthrough
여기.
편집 12:(즉) 사용하려면 samba
cifs-utils를 설치한 후 호스트 및 게스트에서 qemu smb
명령을 사용할 수 있습니다.qemu-system-aarch64 -nographic -machine virt -m 4096 -cpu cortex-a57 -drive if=pflash,format=raw,readonly,file=path_to_efi_file/QEMU_EFI-pflash.raw -drive format=raw,readonly,file=path_to_alpine_virt_iso/alpine-virt-3.12.1-aarch64.iso -drive file=path_to_qcow2_file/alpine.qcow2 -net nic -net user,smb=path_of_shared_folder
팩: mount -t cifs //10.0.2.4/qemu mount_point (e.g. /mnt)
. 당신은 읽을 수있다여기이전 명령의 where qemu
와 from 입니다 .10.0.2.4
답변1
설치하다
다음 명령을 사용하여 알파인 이미지를 성공적으로 부팅하고 설치했습니다 qcow2
.
# create qcow2 image
qemu-img create -f qcow2 alpine.qcow2 10G
# boot up with install medium
qemu-system-aarch64 \
-machine virt -cpu cortex-a57 \
-drive if=pflash,format=raw,readonly,file="/usr/share/edk2/aarch64/QEMU_EFI-pflash.raw" \
-m 512M \
-drive format=raw,readonly,file=/path/to/alpine-standard-3.12.1-aarch64.iso \
-drive file=alpine.qcow2
edk2
호스트에 패키지가 필요하거나 QEMU_EFI-pflash.raw
다른 방법을 통해 파일을 얻습니다.
그런 다음 ( )에서 setup-alpine
sys를 실행하고 설치할 수 있습니다. 여기서는 기본적으로 잘 작동하는 것 같습니다./dev/vdb
alpine.qcow2
setup-alpine
설치가 완료되면 시스템을 종료하고 설치 미디어를 제거합니다.
qemu-system-aarch64 \
-machine virt -cpu cortex-a57 \
-drive if=pflash,format=raw,readonly,file="/usr/share/edk2/aarch64/QEMU_EFI-pflash.raw" \
-m 512M \
-drive file=alpine.qcow2
이제 새로운 알파인 설치로 부팅되어야 합니다.
제도법
그래픽이 필요한 경우 다음을 추가할 수 있습니다.
# ramfb seems to work (altough it wont be fast)
-device ramfb
# or virtio gpu, should be faster, but will be detected later
-device virtio-gpu
가상 머신과 상호 작용하려면 주변 장치도 추가해야 합니다.
-device usb-ehci -device usb-kbd -device usb-mouse
공유 된 폴더
폴더를 공유하려면 포함된 9p 또는 삼바 서버를 사용할 수 있습니다. 9p는 다음과 같이 작동해야 합니다(예:qemu 문서):
-fsdev local,path=/path/to/your/folder,security_model=none,id=test_dev \
-device virtio-9p-pci,fsdev=test_dev,mount_tag=test_mount
그리고 게스트에서:
mount -t 9p -o trans=virtio test_mount /mnt