X86_64架构下虚拟ARM架构并安装麒麟ARM操作系统

1,016 阅读2分钟

X86_64架构下虚拟ARM架构并安装麒麟ARM操作系统

背景 :由于客户单位需要在ARM架构下的操作系统中安装研发的系统,为此昼夜不停的查阅资料以及频繁试错 下,在本地成功安装客户需要的环境,所以将我踩的坑分享给大家,让大家少走弯路。

准备物料及环境

●X86_64物理机

●QEMU(qemu-w64-setup-20211215.exe)

●Kylin-Server-10-SP2-aarch64-Release-Build09-20210524.iso

●UEFI(BIOS的替代方案)

QEMU 是一个通用的开源机器模拟器和虚拟器。麒麟操作系统是银河麒麟高级服务器操作系统V10(沸腾)。

获取方式

QEMU Windowns获取方式:qemu.weilnetz.de/w64/2021/

Kylin-Server-10-SP2-aarch64-Release-Build09-20210524.iso :58服务器 /home/xiecongshu/backup/vmware

UEFI: releases.linaro.org/components/…

文件目录如下

│ install.bat

│ qemu-w64-setup-20211215.exe

│ start.bat

├─bios

│ QEMU_EFI.fd

├─img

│ kylinServerArmSecdog.qcow2

├─iso

│ Kylin-Server-10-SP2-aarch64-Release-Build09-20210524.iso

├─workspace

qemu

安装QEMU

●安装过程中一直next即可。

生成镜像文件

●在安装目录下执行cmd命令。

image.png

●执行如下命令

【注意】目前在这个Kylin-Server-10-SP2-aarch64-Release-Build09-20210524.iso系统下,生成镜像后缀名唯有qcow2,才能正常使用,其中 qemu-img create 是QEMU的一下exe执行文件,其中40G是创建指定磁盘大小。

●各个文件位置

名称位置
虚拟机镜像E:\learn_app\vmWare\Qemu\iso\Kylin-Server-10-SP2-aarch64-Release-Build09-20210524.iso
QEMUE:\learn_app\vmWare\Qemu\workspace\qemu
QEMU_EFI.fdE:\learn_app\vmWare\Qemu\bios\QEMU_EFI.fd
虚拟机磁盘位置E:\learn_app\vmWare\Qemu\img\kylinServerArmSecdog.qcow2

安装虚拟机

●QEMU指令如下。

名称注释
\qemu\qemu-system-aarch64.exe二进制文件,提供模拟aarch64架构的虚拟机进程
-m 8192分配8192 MB内存
-M virt模拟成什么服务器,我们一般选择virt就可以了,他会自动选择最高版本的virt
-cpu cortex-a72模拟成什么CPU,其中cortex-a53\a57\a72都是ARMv8指令集的
-smp 2,cores=2,threads=1,sockets=12个vCPU,这2个vCPU由qemu模拟出的一个插槽(socket)中的2个核心,每个
-bios xxx指定bios bin所在的路径
-device xxx添加一个设备,参数可重复
-drive添加一个驱动器,参数可重复
-net添加网络设备

●制作虚拟机install.bat 安装脚本,如下。

●执行命令后会出现麒麟Logo如下图(安装过程与VMware安装Centos过程大体相同,就是特别慢):

安装过程省略,和普通的虚拟机一样,就是会特别慢

2f4f64206d25bcd6c30602bfe0b0eac.png

●在网络设置时候需要根据自己需求配置,否则虚拟机分配不了IP地址,如下图:

b596727466c90103eeeaf559f285c22.png

●安装好后,查看cpu架构(uname -m)

image.png

启动虚拟机

●安装好后,我们需要再次启动(无需指定iso文件启动),制作start.bat脚本文件,如下:

●启动成功界面如下图:

image.png

image.png

利用shell工具连接

我们建立好虚拟机后,通常需要利用shell工具进行文件的传输或者远程交互。 宿主访问虚拟机需要访问本机2222 ssh 127.0.0.1:2222