1.安装准备
需要准备qemu安装程序及AArch64 UEFI固件镜像,下载地址如下:
1.QEMU安装程序:
https://www.qemu.org/download/
2.AArch64 UEFI固件镜像(QEMU_EFI.fd):
https://releases.linaro.org/components/kernel/uefi-linaro/16.02/release/qemu64/
3.aarch iso镜像,我这里使用华为欧拉的版本。
https://www.openeuler.openatom.cn/zh/download/?archive=true
2.安装软件
- 安装QEMU
首先安装QEMU,使用默认的配置项进行安装
等待安装程序执行完成。
安装完成后点击”Finish”结束安装流程。
- 安装固件 从以下网页上,将固件中的两个文件下载下
将下载下来的文件放置到D盘的QEMU文件夹,如图所示:
然后从QEMU所在的安装目录下,执行cmd命令:
qemu-img.exe create -f raw D:\QEMU\openEuler_arm64.img 100G
3.安装系统
使用前面的CMD框继续执行,其中iso需要修改为实际的镜像存放地址。
qemu-system-aarch64.exe -m 8G -cpu cortex-a72 --accel tcg,thread=multi -M virt -bios D:\QEMU\QEMU_EFI.fd -rtc base=localtime -display sdl -device VGA -device nec-usb-xhci -device usb-tablet -device usb-kbd -drive if=virtio,file=D:\QEMU\openEuler_arm64.img,id=hd0,format=raw,media=disk -drive if=none,file=D:\ISO\openEuler-22.03-LTS-SP4-aarch64-dvd.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -smp 8,sockets=2,cores=2,threads=2,maxcpus=8
回车执行后,系统弹出引导框,开始正常执行安装程序。
接下来就按照正常的安装程序进行安装,安装完成后,可以发现系统架构已经变为ARM。
注意: 鼠标可以是usb-tablet也可以是usb-mouse。对于ARMv8指令集的cpu,可以选择cortex-a72。若要修改cpu相关信息,可以通过以下参数修改:-smp 8,sockets=2,cores=2,threads=2,maxcpus=8
4.启动脚本
制作一个bat启动脚本实现,一键启动虚拟机环境。新建一个startup.bat文件,将以下脚本粘贴至文件里保存。
@echo off
"D:\Program Files\qemu\qemu-system-aarch64.exe" -m 8G -cpu cortex-a72 --accel tcg,thread=multi -M virt -bios D:\QEMU\QEMU_EFI.fd -rtc base=localtime -display sdl -device VGA -device nec-usb-xhci -device usb-tablet -device usb-kbd -drive if=virtio,file=D:\QEMU\openEuler_arm64.img,id=hd0,format=raw,media=disk -net nic,model=virtio -net user,hostfwd=tcp::52222-:22 -smp 8,sockets=4,cores=4,threads=4,maxcpus=8
双击后直接启动,系统正常运行。
访问本机的52222端口还能直接连接到服务器ssh服务。
5.写在最后
经过我的测试后发现,通过模拟器来实现X86架构模拟ARM运行,实际开销比较大,流畅度不佳。可以通过加大配置的方式来提高流畅度,可参考下面的官方文档进行配置:
https://www.qemu.org/docs/master/system/qemu-manpage.html
实际用途可以解决手头无ARM机器又急需要使用ARM环境时可搭建使用,不建议用于生产环境。感兴趣的朋友可以搭建尝试运行效果!
声明:来自运维贼船,仅代表创作者观点。链接:https://eyangzhen.com/3150.html