설치하다

설치하다

나는 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나타납니다 . 어떤 도움이라도 대단히 감사하겠습니다!QEMUcompat_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-ltsinitrd 파일을 다운로드하세요.여기그러면 다음과 같습니다:

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:.-hdaqemu-img​나는 달려가서 선택의 여지가 하나뿐이라는 alpine-setup것을 알게 되었습니다 . 그래서 나는 그것을 선택하고 , 내 선택은 ,, .... 이라는 질문을 받습니다 . 나는 선택 하고 얻습니다 . 이것이 실제로 내가 지정한 디스크 이미지와 관련이 있습니까? 그런데 이 옵션이 없으면 알파인을 설치하는 데 문제가 없습니다. 따라서 설치를 위해서는 설치 옵션(아마도 )을 명령 에 전달해야 합니다 .Available disks are:vdaHow would you like to use it?sysdatalvmsysERROR:unable to select packages: syslinux (no such package): required by: world[syslinux]-hda-hdaqemu

편집 9: 이것링크는 Alpine이 기본적으로 Syslinux를 부트로더로 사용함을 보여줍니다. 그리고 패키지도 가능한거 같던데여기, apk add syslinuxAlpine을 사용하면 아무것도 반환되지 않습니다... Alpine on Disk 설치 단계에서 분명히 syslinux를 검색했지만 찾을 수 없습니다...

편집 10:@rudib의 답변은 나에게 매력처럼 작용했습니다. 파일은 패키지에서 QEMU_EFI-pflash.raw찾을 수 있습니다.rpm여기. 해당 항목을 찾아 파일을 aarch64추출 하면 됩니다.QEMU_EFI-pflash.raw

편집 11:마지막 참고 사항: 공유 디렉터리에 쓰려면 호스트 시스템에서 QEMU루트( )로 실행해야 합니다. 대답은 보안 모델을 사용한다는 점을 고려하세요! 이에 대한 자세한 내용은 다음을 참조하세요.sudopassthrough여기.

편집 12:(즉) 사용하려면 sambacifs-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-alpinesys를 실행하고 설치할 수 있습니다. 여기서는 기본적으로 잘 작동하는 것 같습니다./dev/vdbalpine.qcow2setup-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

관련 정보