• Windows上使用QEMU创建aarch64(ARM64)虚拟机


    前言

    随着国产化的推进,现在采用ARM、MIPS的机器越来越多,作为开发、运维人员要调测软件总不能每种架构的机器都去买一台吧?主要像博主这样的穷B,实在也是承受不起。。

    需要的工具

    1、QEMU

    Windows版官网下载地址:https://qemu.weilnetz.de/w64/

    本文使用的是最新的20220831版本。

    2、QEMU UEFI固件文件

    https://releases.linaro.org/components/kernel/uefi-linaro/latest/release/qemu64/QEMU_EFI.fd

    这里下载的是16.02的版本,放在了 Z:\ 根目录。

    网上还能找到一些其它版本,但是推荐使用这个,兼容性比较好。

    3、一个aarch64的光盘镜像文件

    请自行准备。本文使用的是一个统信UOS的专业版镜像文件。

    安装设置QEMU

    QEMU下载好后,直接双击安装,路径根据自身喜好选择即可。

    这里是安装在默认路径:C:\Program Files\qemu

    安装完成后,在Path环境变量中添加QEMU路径:

    创建硬盘镜像

    在PowerShell或者CMD中输入:

    qemu-img create -f qcow2 uos.img 80G

    如图:

    运行虚拟机

    示例:

    qemu-system-aarch64 -m 4000 -cpu cortex-a72 -smp 4,cores=4,threads=1,sockets=1 -M virt -bios Z:\QEMU_EFI.fd -net nic,model=pcnet -device nec-usb-xhci -device usb-kbd -device usb-mouse -device VGA -drive if=none,file=Z:\uos.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=Z:\uos.img,id=hd0 -device virtio-blk-device,drive=hd0

    其中参数:

    1. -m 4000 表示分配给虚拟机的内存最大4000MB
    2. -cpu cortex-a72 指定CPU类型,还可以选择cortex-a53、cortex-a57等
    3. -smp 4,cores=4,threads=1,sockets=1 指定虚拟机最大使用的CPU核心数等
    4. -M virt 指定虚拟机类型为virt,具体支持的类型可以使用 qemu-system-aarch64 -M help 查看
    5. -bios Z:\QEMU_EFI.fd 指定UEFI固件文件
    6. -net nic,model=pcnet 启用网络功能
    7. -device nec-usb-xhci -device usb-kbd -device usb-mouse 启用USB鼠标等设备
    8. -device VGA 启用VGA视图,对于图形化的Linux这条很重要!
    9. -drive if=none,file=Z:\uos.iso,id=cdrom,media=cdrom 指定光驱使用镜像文件
    10. -device virtio-scsi-device -device scsi-cd,drive=cdrom 指定光驱硬件类型
    11. -drive if=none,file=Z:\uos.img 指定硬盘镜像文件

     实际上,并不用写那么多参数,我个人喜欢写成这样:

    qemu-system-aarch64 -m 4G -cpu cortex-a72 -smp 4 -M virt -bios Z:\QEMU_EFI.fd -device nec-usb-xhci -device usb-kbd -device usb-mouse -device VGA -cdrom Z:\uos.iso -hda Z:\uos.img

     搞定收工。。

  • 相关阅读:
    Windows cmd 命令及Linux 环境下导入导入mysql 数据库
    Filebeat+Kafka+ELK日志分析架构
    天宇优配|百股涨停再现,沪指盘中创近两个月新高
    处理数据 根据 pid 添加到父级 children
    这种测试用例编写方法,你怕是都没用过...
    如何处理前端文件上传?
    计算机组成原理——基础入门总结(一)
    Datafaker生成模拟数据
    2011年下半年 系统架构设计师 下午试卷 II
    2023济南大学计算机考研信息汇总
  • 原文地址:https://blog.csdn.net/s806903/article/details/127651807