qemu创建aarch64虚拟机过程记录
qemu装的是5.0版本,系统是红旗7.3(centos 7.3)
准备几个文件,一个是对应的系统镜像文件,一个是EFI文件。
EFI文件主要是用来做引导的,具体参考这个
新建一个虚拟机的硬盘
qemu-img create centos-aarch64.img
启动
qemu-system-aarch64 -m 5G -cpu cortex-a72 -smp 4 -M virt -bios /home/QEMU_EFI.fd -nographic -drive if=none,file=/home/CentOS-7-aarch64-Everything-1804.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=centos-aarch64.img,format=raw,id=hd0 -device virtio-blk-device,drive=hd0
随后进入安装界面,走安装流程即可。
安装完成后,会自动进入登录,输入账户名密码即可。
启动后,并没有网络
可以poweroff关机。
再次启动虚拟机,执行的命令如下:
qemu-system-aarch64 -m 5G -cpu cortex-a72 -smp 4 -boot order=cd -M virt -bios /home/wang/qemu_test/QEMU_EFI.fd -nographic -drive if=none,file=centos-arm64.img,format=raw,id=hd0 -device virtio-blk-device,drive=hd0
等半天发现进入这个页面
再等一下,到这里
一度以为这个就是安装的有问题,其实并不是…
参考这篇文章操作 https://blog.csdn.net/WMX843230304WMX/article/details/102628133
shell那输入 exit 并回车
选择 Boot Maintenance Manager 回车,进入
选择Boot From File
选择第一个,回车
选择EFI,回车
选择centos回车
选择 grubaa64.efi 或者 shimaa64-centos.efi 都可以进入系统
这里两个只是引导方式不一样,shimaa64-centos.efi走的是bios模式,grubaa64.efi走的是uefi模式
参考 https://www.cnblogs.com/dream397/p/12613326.html 和 https://www.zhihu.com/question/21672895
选择后,进入这个界面,直接选择进入系统即可
吐槽
这个过程实在太曲折,中间还尝试了使用virt-install创建虚拟机,失败;
后面又想尝试用vir-manager去启动虚拟机,失败;
升级了libvirtd,再重新试,依然没有成功…
准备放弃的时候,看到了 https://blog.csdn.net/WMX843230304WMX/article/details/102628133 ,尝试一下居然成功了……
前后耗时两周多,才最终进入到这个系统(安装只花了一周左右)。
注意
目前似乎并没有启动kvm加速,虚拟机最终也只能跑满一个CPU,如图
后续需要在虚拟机上跑 docker,打包镜像,这种情况似乎资源完全不够用。
vcpu和物理机CPU绑定
可以参考 https://www.cnblogs.com/hukey/p/6401195.html 和
https://cloud.tencent.com/developer/article/1039241
其实没多大影响,主要的使用场景是有多个虚拟机的时候,可以把虚拟机1绑定到其中一个CPU,虚拟机2绑定到另外一个CPU。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程