qemu安装arm64架构银河麒麟

qemu虚拟化软件,可以在一个平台上模拟另一个硬件平台,可以支持多种处理器架构。

一、安装

安装教程:https://blog.csdn.net/qq_36035382/article/details/125308044

下载链接:https://qemu.weilnetz.de/w64/2024/

我下载的是

在这里插入图片描述

下载完成之后正常安装,测试是直接在安装目录下右击打开poewershell,然后输入:

./qemu-system-arm.exe -version

显示如下:

在这里插入图片描述

二、配置环境

参考:https://blog.csdn.net/weixin_38120390/article/details/135779790

EFI文件:https://releases.linaro.org/components/kernel/uefi-linaro/16.02/release/qemu64/

EFI(Extensible Firmware Interface) 是一种用于计算机的固件接口,旨在替代传统的 BIOS(基本输入/输出系统)。

创建虚拟磁盘

首先创建一个目录,用来放虚拟机,然后在qemu目录下用终端输入

qemu-img create -f qcow2 D:kylinkylin_arm64.img 50g

这样就在D:kylin路径下安装了kylin_arm64.img这个镜像文件

文件目录结构

在这里插入图片描述

安装操作系统

这个指令参考博客

qemu-system-aarch64.exe -m 8192 -cpu cortex-a72 -smp 4,cores=4,threads=1,sockets=1 -M virt -bios D:kylinQEMU_EFI.fd -netdev user,id=net0 -device virtio-net-pci,netdev=net0 -device nec-usb-xhci -device usb-kbd -device usb-mouse -device VGA -drive if=none,file=D:kylinKylin-Desktop-V10-SP1-2403-Release-20240430-arm64.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=D:kylinkylin_arm64.img,id=hd0 -device virtio-blk-device,drive=hd0
参数解释
  1. qemu-system-aarch64.exe
    • 指定要使用的 QEMU 模拟器,针对 ARM64 架构。
  2. m 8192
    • 分配给虚拟机的内存大小,这里为 8192 MB(即 8 GB)。
  3. cpu cortex-a72
    • 指定使用 Cortex-A72 作为虚拟 CPU 的型号,这是 ARM 体系结构的一种高性能处理器。
  4. smp 4,cores=4,threads=1,sockets=1
    • 配置虚拟机的对称多处理(SMP)设置:
      • 4 表示总共有 4 个 CPU。
      • cores=4 表示每个 CPU 只有 4 个核心。
      • threads=1 表示每个核心只有 1 个线程。
      • sockets=1 表示只有 1 个 CPU 插槽。
  5. M virt
    • 指定虚拟机的机器类型,这里使用的是通用的 Virt 虚拟机类型。
  6. bios D:kylinQEMU_EFI.fd
    • 指定要使用的 BIOS 固件文件,这里使用的是 UEFI 固件,文件路径为 D:kylinQEMU_EFI.fd
  7. net nic
    • 创建一个网络接口卡(NIC)。
  8. net tap,ifname=tap0
    • 配置网络以使用 TAP 设备 tap0,允许虚拟机通过此设备连接到主机的网络。
  9. device nec-usb-xhci
    • 添加 NEC USB 3.0 控制器设备。
  10. device usb-kbd
    * 添加 USB 键盘设备。
  11. device usb-mouse
    * 添加 USB 鼠标设备。
  12. device VGA
    * 添加 VGA 图形适配器设备,用于显示输出。
  13. drive if=none,file=D:kylinKylin-Desktop-V10-SP1-2403-Release-20240430-arm64.iso,id=cdrom,media=cdrom
    * 指定一个光盘驱动器,使用 ISO 文件作为介质。if=none 表示没有指定接口类型。
    * file=D:kylinKylin-Desktop-V10-SP1-2403-Release-20240430-arm64.iso 指定 ISO 文件的路径。
    * id=cdrom 为该设备指定一个 ID。
    * media=cdrom 指定该驱动器为 CD-ROM 类型。
  14. device virtio-scsi-device
    * 添加 VirtIO SCSI 控制器设备,用于管理存储设备。
  15. device scsi-cd,drive=cdrom
    * 将前面定义的 CD-ROM 设备连接到 SCSI 控制器。
  16. drive if=none,file=D:kylinkylin_arm64.img,id=hd0
    * 指定一个硬盘驱动器,使用镜像文件作为存储设备。
    * file=D:kylinkylin_arm64.img 指定镜像文件的路径。
    * id=hd0 为该驱动器指定一个 ID。
  17. device virtio-blk-device,drive=hd0
    * 将前面定义的硬盘驱动器连接到 VirtIO 块设备控制器。
  • qemu-system-aarch64.exe: 启动 QEMU 的 ARM64 版本模拟器。
  • m 8192: 为虚拟机分配 8192 MB(8 GB)的内存。
  • cpu cortex-a72: 指定使用 Cortex-A72 作为虚拟 CPU 的型号,这是 ARM 体系结构的一种高性能处理器。
  • smp 4,cores=4,threads=1,sockets=1: 配置虚拟 CPU 的多线程和多核心设置。
    • 4: 总共 4 个 CPU 核心。
    • cores=4: 每个 CPU 插槽有 4 个核心。
    • threads=1: 每个核心有 1 个线程。
    • sockets=1: 总共 1 个 CPU 插槽。
  • M virt: 指定模拟的机器类型为 virt,这是一种通用的虚拟化架构。
  • bios D:kylinQEMU_EFI.fd: 指定使用的 BIOS 固件文件,QEMU_EFI.fd 是一个 UEFI 固件文件,用于支持现代操作系统的启动。
  • netdev user,id=net0: 创建一个用户模式网络设备,ID 为 net0。这使得虚拟机可以访问主机网络。
  • device virtio-net-pci,netdev=net0: 将一个 Virtio 网络设备添加到虚拟机,使用之前定义的 net0 网络设备。
  • device nec-usb-xhci: 添加 NEC USB 3.0 控制器。
  • device usb-kbd: 添加一个 USB 键盘设备。
  • device usb-mouse: 添加一个 USB 鼠标设备。
  • device VGA: 添加一个 VGA 显示设备。
  • drive if=none,file=D:kylinKylin-Desktop-V10-SP1-2403-Release-20240430-arm64.iso,id=cdrom,media=cdrom: 添加一个光驱设备,指向指定的 ISO 镜像文件。
    • if=none: 指定此驱动器的接口类型。
    • file=...: ISO 文件路径。
    • id=cdrom: 给此驱动器一个 ID。
    • media=cdrom: 指定该驱动器为光盘媒体。
  • device virtio-scsi-device: 添加一个 Virtio SCSI 控制器,以支持 SCSI 设备。
  • device scsi-cd,drive=cdrom: 将之前添加的光驱设备作为 SCSI CD 设备。
  • drive if=none,file=D:kylinkylin_arm64.img,id=hd0: 添加一个硬盘驱动器,指向指定的虚拟硬盘镜像文件。
    • if=none: 指定此驱动器的接口类型。
    • file=...: 硬盘镜像文件路径。
    • id=hd0: 给此硬盘驱动器一个 ID。
  • device virtio-blk-device,drive=hd0: 将之前添加的硬盘驱动器作为 Virtio 块设备。

选择操作系统

选择第二个安装 Kylin-Desltop V10-SP1

在这里插入图片描述

选择中文

在这里插入图片描述

选择从live安装:

在这里插入图片描述

然后点击创建的硬件,然后,然后下一步

在这里插入图片描述

然后选择格式化整个磁盘

剩下的就是创建用户等。

接着就是等待安装

在这里插入图片描述

Done

在这里插入图片描述

再次启动不用使用镜像文件,直接

qemu-system-aarch64.exe -m 8192 -cpu cortex-a72 -smp 4,cores=4,threads=1,sockets=1 -M virt -bios D:kylinQEMU_EFI.fd -netdev user,id=net0 -device virtio-net-pci,netdev=net0 -device nec-usb-xhci -device usb-kbd -device usb-mouse -device VGA -drive if=none,file=,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=D:kylinkylin_arm64.img,id=hd0 -device virtio-blk-device,drive=hd0

也就是上面安装命令把file路径去掉,这样就直接从img文件所属目录打开了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/487652.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小程序维护外包流程和费用

由于某些原因很多老板想要跟换掉小程序原来合作的开发公司,重新把小程序系统维护外包新的公司。小程序系统外包维护是一个涉及多个方面的过程,需要从需求明确、选择团队到持续优化等多个环节进行细致管理。以下就是小程序系统外包维护主要包括几个关键步…

C—指针初阶(2)

如果看完阁下满意的话,能否一键三连呢,我的动力就是大家的支持与肯定,冲! 二级指针 我们先看概念以及作用:用来存放一级指针的地址的指针 先看例子,我们逐一分析 我们先分析上面那个“1” 标注那里&#x…

x64dbg 安装使用教程

x64dbg的安装与配置 x64dbg官网地址:https://x64dbg.com/#start x64dbg界面介绍 1.反汇编窗口 这个位置显示的是需要分析的程序的反汇编代码。在第一个区域的最左侧例如“7712EAA3”这一列就是内存地址区域,接着“E8 07”就是汇编指令的opcode&#xff…

视频推拉流EasyDSS无人机直播技术巡查焚烧、烟火情况

焚烧作为一种常见的废弃物处理方式,往往会对环境造成严重污染。因此,减少焚烧、推广绿色能源和循环经济成为重要措施。通过加强森林防灭火队伍能力建设与长效机制建立,各地努力减少因焚烧引发的森林火灾,保护生态环境。 巡察烟火…

禾赛激光雷达AT_128_P_A02激光时间同步配置

sudo apt update sudo apt-get install linuxptp ethtool sudo ethtool -T 网卡名字(ifconfig可以查看)网卡名即连接激光雷达之后配置的ip所对应的网卡名称 一般来说看到如下提示信息才正常: lzslzs-Precision-3591:~$ ethtool -T enp0s31f6 Time stamping paramet…

java项目部署相关记录

部署 简单部署(Windows) redis我使用小皮面板开的 mysql也是 maven打包 先打包,打包成功,找到对应jar包 在文件夹打开,然后再次目录上开cmd java -jar jplan-0.0.1-SNAPSHOT.jar需要注意的是,windows的java环境要和idea项目里边的java是一致的 运行成功! 属性配置方式…

v-for遍历多个el-popover;el-popover通过visible控制显隐;点击其他隐藏el-popover

场景:el-popover通过visible控制显隐;同时el-popover是遍历生成的多个。 原文档的使用visible后就不能点击其他地方使其隐藏;同时解决实现点击其他区域隐藏 <template><div><template v-for="(item,index) in arr" :key="index"><…

【Ubuntu】清理、压缩VirtualBox磁盘空间大小

1、说明 本人为虚拟机创建了两个硬盘:root.vdi 和 hoom.vdi,在创建虚拟机时,分别挂载在/root目录和/home目录下。 下面演示分别清理、压缩两个磁盘的空间。 2、清理空间 1)清理 root.vid sudo dd if=/dev/zero of=/EMPTY bs=1M;sudo rm -f /EMPTY输出信息中会提示,如…

微信小程序跳转其他小程序以及跳转网站

一、跳转其他小程序 1.1 知道appid和页面路径 wx.navigateToMiniProgram({appId: appid, // 替换为目标小程序 AppIDpath: pathWithParams, // 小程序路径envVersion: release, // 开发版、体验版或正式版success(res) {console.log("跳转到其他小程序成功&#xff01;&q…

在ensp中ACL路由控制实验

一、实验目的 掌握ACL路由控制管理 二、实验要求 要求&#xff1a; 配置路由策略&#xff0c;左右两边不公开区域对方不可达&#xff0c;其他区域可以互相ping通 设备&#xff1a; 1、三台路由器 2、四台交换机 3、四台电脑 4、四台服务器 使用ensp搭建实验环境,如图所…

NIFI使用

1 从Kafka接收消息&#xff0c;存储到数据库中。 &#xff08;1&#xff09; ConsumerKafka processor &#xff08;2&#xff09;Execute Scripts Processor 我这里是使用JS脚本进行处理。 还有很多其他语言的脚本。 var flowFile session.get(); if (flowFile ! null) {v…

【leetcode】替换后的最长重复字符、将字符串翻转到单调递增

1.替换后的最长重复字符 示例如下&#xff1a; 下面我们来分析一下一个例子&#xff0c;其中K 2 暴力枚举 这里的字符串s是仅由大写字母组成&#xff0c;首先我们尝试用暴力解法的思路来想一下这道题&#xff0c;通过从第一个字符开始进行枚举&#xff0c;如果出现了条件判断…

如何制作“优美”PPT

目录 1.免费PPT模板网站&#xff1a; 2.免费有较好质量的图片网站&#xff1a; 免费图片资源 免费透明PNG图片资源&#xff1a; 免费icon图片资源&#xff1a; 3.选择好的图片&#xff1a; 图片底色 4.要与不要 千万不要&#xff1a; 一定要&#xff1a; 6.一些建议…

类和对象一

目录 1.类的引入 2.类的定义 3.访问限定符 4.类的作用域 5.类对象模型 6.类的大小 1.类的引入 C语言结构体中只能定义变量&#xff0c;在C中&#xff0c;结构体不仅可以定义变量&#xff0c;也可以定义函数。 C兼容C语言&#xff0c;结构用法可以继续使用 同时sruct也升…

【计算机网络】实验13:运输层端口

实验13 运输层端口 一、实验目的 本次实验旨在验证TCP和IP运输层端口号的作用&#xff0c;深入理解它们在网络通信中的重要性。通过实验&#xff0c;我将探讨端口号如何帮助区分不同的应用程序和服务&#xff0c;使得在同一台主机上能够同时运行多个网络服务而不发生冲突。此…

关于睡懒觉

我们经常听到一个词&#xff1a;睡懒觉。 我认为&#xff0c;睡懒觉这个词&#xff0c;是错误的。 人&#xff0c;是需要睡眠的&#xff0c;睡不够&#xff0c;就不会醒。睡够了&#xff0c;自然会醒&#xff0c;也不想继续睡。不信你试试&#xff0c;睡够了&#xff0c;你…

【推荐算法】单目标精排模型——FiBiNET

key word: 学术论文 Motivation&#xff1a; 传统的Embedding&MLP算法是通过内积和Hadamard product实现特征交互的&#xff0c;这篇文章的作者提出了采用SENET实现动态学习特征的重要性&#xff1b;作者认为简单的内积和Hadamard product无法有效对稀疏特征进行特征交互&a…

C语言:define定义常量和定义宏(详解)

本篇博客给大家带来的是#define定义常量和#define定义宏的方法 &#x1f41f;&#x1f41f;文章专栏&#xff1a;C语言 &#x1f680;&#x1f680;若有问题评论区下讨论&#xff0c;我会及时回答 ❤❤欢迎大家点赞、收藏、分享 你们的支持就是我创造的动力 今日思想&#xff1…

Spring Boot如何实现防盗链

一、什么是盗链 盗链是个什么操作&#xff0c;看一下百度给出的解释&#xff1a;盗链是指服务提供商自己不提供服务的内容&#xff0c;通过技术手段绕过其它有利益的最终用户界面&#xff08;如广告&#xff09;&#xff0c;直接在自己的网站上向最终用户提供其它服务提供商的…

Unity入门(了解生命周期)

目录 1.新建Script&#xff08;给物体添加C#代码&#xff09; 2.Unity常用的生命周期介绍 1.新建Script&#xff08;给物体添加C#代码&#xff09; 首先点击物体&#xff0c;选择Add Component 搜索 New Script&#xff0c;自命名添加这里命名为PlayerController 2.打开Pla…