I would like to run the Ubuntu installer in qemu. I have used the kernel from the respective Ubuntu CD images and have verified my command line using the AMD64 architecture:
$ qemu-system-x86_64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-amd64.iso >linux
$ qemu-system-x86_64 -nodefaults -nographic -kernel linux \
-serial stdio -append "console=ttyS0" \
-machine pc -cpu qemu64 -m 1G
[ 0.0000000] Linux version 4.15.0-44-generic ..
However, when I try the same thing for ARM64 architecture (not my host arch):
$ qemu-system-aarch64 --version
QEMU emulator version 2.5.0 ..
$ isoinfo -R -x "/install/vmlinuz" -i bionic-server-arm64.iso >linux
$ qemu-system-aarch64 -nodefaults -nographic -kernel linux \
-serial stdio -append "console=ttyAMA0" \
-machine virt -cpu cortex-a53 -m 1G
I get zero output at 100% cpu usage. How can i determine what went wrong?
Executing with -d unimp -D debug.log
reveals:
read access to unsupported AArch64 system register op0:3 op1:0 crn:0 crm:7 op2:2
Just upgrade your system.
Both AMD64 and ARM64 kernels start exactly as attempted in question using
QEMU emulator version 3.1.0
Note that the command line is not exactly the same though,
console=ttyS0
translates toconsole=ttyAMA0
on ARM. To really start subiquity, add-initrd initrd -cdrom bionic-server-arm64.iso
isoinfo -R -x "/install/initrd.gz" -i bionic-server-arm64.iso >initrd
(verify results - isoinfo will not fail verbosely)file=/cdrom/preseed/example.seed