QEMU s390x 에뮬레이션에서 RHEL 7을 설치하려고 합니다.

QEMU s390x 에뮬레이션에서 RHEL 7을 설치하려고 합니다.

저는 소프트웨어 빌드에 사용할 s390x Linux 가상 머신을 생성하기 위해 QEMU를 사용하는 방법을 평가하고 있습니다. RHEL 8 및 Ubuntu 20과 같은 최신 Linux 배포판을 사용하여 머신을 만드는 데 성공했지만 RHEL 7 머신이 정말 필요합니다.

저는 Fedora 36 x86을 사용하고 있으며 Fedora QEMU 6.2 패키지와 소스에서 빌드된 현재 QEMU 7.x를 사용하여 다음을 시도했습니다.

qemu-img create -f qcow2 rootfs.qcow2 20G

qemu-system-s390x \
  -M s390-ccw-virtio -m 4G -smp 2 -cpu max \
  -drive file=rhel-server-7.9-s390x-dvd.iso,media=cdrom,if=none,id=drive-virtio-disk1 \
  -device virtio-scsi -device scsi-cd,drive=drive-virtio-disk1,bootindex=1 \
  -drive file=rootfs.qcow2,if=none,id=drive-virtio-disk0 \
  -device virtio-blk-ccw,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=2,scsi=off \
  -net nic,model=virtio,netdev=net1 -netdev user,id=net1 \
  -nographic -display none -serial mon:stdio \
  -d guest_errors \
  -kernel kernel.img -initrd initrd.img

DVD의 이미지 영역에서 커널+initrd 이미지를 시도했고 DVD의 커널 3.10 RPM 패키지에서 추출한 이미지도 시도했습니다. 다양한 RHEL 7.x 릴리스를 시도했지만 모두 동일한 결과를 얻었습니다. 에뮬레이터는 디버그 출력만 사용하여 바로 종료됩니다. 예를 들면 다음과 같습니다.

Guest crashed on cpu 0: disabled-wait
PSW: 0x000a000000000000 0x000000008badcccc

RHEL 7 s390x를 작동시키기 위한 조언이 있는 사람이 있습니까?

답변1

대답은 RHEL7 릴리스에 없는 커널 기능으로 인해 불가능하다는 것입니다.QEMU 문제 906

나는 이전 O/S에서 연결/실행되는 아티팩트를 생성하기 위해 gcc/libc/libstdc++ 등의 버전을 제어하기 위해 crosstool-ng 도구 체인을 사용하여 Fedora 36을 실행하는 s390x 에뮬레이션에서 구축하여 문제를 해결했습니다.

관련 정보