主要是参考 在 QEMU 上跑 arm/mips 架构的 Debian | 澪同学的博客 - 个人的技术分享
略微参考了 https://phwl.org/2021/qemu-armhf-debian/
其中两条核心的指令修改为
qemu-system-arm -machine virt -cpu cortex-a15 -smp cpus=4,maxcpus=4 -nographic \
-kernel ./vmlinuz -initrd ./initrd.gz -m 1024 \
-netdev user,id=n0 -device virtio-net-device,netdev=n0 \
-drive file=debian.qcow2,if=none,format=qcow2,id=hd0 -device virtio-blk-device,drive=hd0 \
-drive file=debian-10.13.0-armhf-xfce-CD-1.iso,id=cdrom,if=none,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom
这样就解决了那篇文章的无法挂在cdrom的问题
下一条指令修改为
qemu-system-arm -machine virt -cpu cortex-a15 -smp cpus=4,maxcpus=4 -nographic --append "root=/dev/vda2" \
-kernel ./vmlinuz-4.19.0-27-armmp-lpae -initrd ./initrd.img-4.19.0-27-armmp-lpae -m 1024 \
-netdev user,id=n0 -device virtio-net-device,netdev=n0 \
-drive file=debian.qcow2,if=none,format=qcow2,id=hd0 -device virtio-blk-device,drive=hd0
这样解决了运行时找不到网卡的问题,而且上面的一堆配置tap模式的指令就不需要执行了,反正我的场景中不需要