国产化之虚拟ARM64-CPU安装银河麒麟操作系统

简介: 国产化之虚拟ARM64-CPU安装银河麒麟操作系统

背景


某个项目需要实现基础软件全部国产化,其中操作系统指定银河麒麟v4,CPU使用飞腾处理器。我本地没有这个国产的处理器,但飞腾是基于ARMv8架构的64位处理器,所以理论上基于这个CPU架构的硬件应该都可以。

首先想到的是树莓派,这个开发板集成的ARM CPU,不过要看下是否为ARMv8架构,如果正好有的话可以试一试。不过这也有点重了,能模拟CPU就好了,最终找到了QEMU这个工具,可以在Windows上运行。

这篇文章就在Windows 10上创建一个模拟ARM64平台的虚拟机来安装银河麒麟操作系统。


环境


  • 主机操作系统:Windows 10 专业版
  • 主机CPU平台:x86-64
  • 虚拟机软件:QEMU

下载

银河麒麟v4 ARM版下载地址:「Inspur」- NF2180M3 (ARMv8) – K4NZ BLOG

QEMU下载地址:Download QEMU – QEMU

QEMU的UEFI固件:releases.linaro.org/components/…

虚拟网卡工具:pan.baidu.com/s/1sFSH8AOn…


安装


1、安装QEMU


执行安装文件,一路安装即可。我这里都是默认配置,没有更改。


2、配置虚拟机网络


这一步是在主机创建一个Tap网卡给虚拟机使用,使用【下载】步骤中的 虚拟网卡工具。

这个工具是从某个VPN软件提取出来的,创建虚拟网卡的命令:

tapctl create --name tap0

通过这个命令可以删除:

tapctl delete tap0

注意:tap0是虚拟网卡的名字,可以按照自己的习惯命名,不重复就行了。

然后还要共享主机网络给这个虚拟网卡使用,参照下图:

1689139166046.png


3、创建虚拟机


这个工具需要使用命令,这里编写一个批处理文件:create.bat,内容如下:

"C:\Program Files\qemu\qemu-img.exe" create -f qcow2 D:\qemu\kylin-v4-arm64\kylin-v4-arm64.qcow2 50G
"C:\Program Files\qemu\qemu-system-aarch64.exe" ^
-m 2048 ^
-cpu cortex-a53 ^
-smp 4,cores=4,threads=1,sockets=1 ^
-M virt ^
-bios D:\qemu\kylin-v4-arm64\QEMU_EFI.fd ^
-device VGA ^
-device nec-usb-xhci ^
-device usb-mouse ^
-device usb-kbd ^
-cdrom D:\qemu\kylin-4.0.2-server-sp2-arm64.iso ^
-net nic,model=virtio ^
-net tap,ifname=tap0 ^
-boot d D:\qemu\kylin-v4-arm64\kylin-v4-arm64.qcow2

简单解读下,里边执行了两个命令:

第一行是创建一个镜像。镜像文件带路径的名字是:D:\qemu\kylin-v4-arm64\kylin-v4-arm64.qcow2,大小是50G。路径和名字都是可以按自己的需求定义的。

第二行是在第一行创建的镜像中创建虚拟机。

  • -m 指定内存大小,单位M,2048就是2G。
  • -cpu 指定CPU型号,cortex-a53 是一款ARMv8架构的处理器。
  • -smp 依次为:逻辑处理器的个数、每个CPU的核心数、每个CPU的线程数、CPU的个数。
  • -bios UEFI固件的路径,前文【下载】的步骤中提到过。
  • -cdrom 光盘镜像文件的地址,这里就是操作系统安装镜像的路径。
  • -boot 当前虚拟机镜像的文件路径。
  • -net tap 指定后端网络类型是TAP,ifname指定TAP网卡的名字是tap0。

4、安装操作系统


以管理员身份运行上文中的批处理程序 create.bat,然后会启动QEMU的窗口,并开启操作系统的安装。

这里没什么好说的,按照提示一步步设置就行了。为了方便操作,建议安装图形化界面。

1689139251886.png

安装过程比较慢,请耐心等待。


5、启动操作系统


安装完毕后,重新启动时需要移除光盘镜像,否则还会进入安装界面。

退出当前的的QEMU窗口,重新创建一个批处理文件 start.bat:

"C:\Program Files\qemu\qemu-system-aarch64.exe" ^
-m 2048 ^
-cpu cortex-a53 ^
-smp 4,cores=4,threads=1,sockets=1 ^
-M virt ^
-bios D:\qemu\kylin-v4-arm64\QEMU_EFI.fd ^
-device VGA ^
-device nec-usb-xhci ^
-device usb-mouse ^
-device usb-kbd ^
-net nic,model=virtio ^
-net tap,ifname=tap0 ^
-boot d D:\qemu\kylin-v4-arm64\kylin-v4-arm64.qcow2

这些参数和上边创建虚拟机的参数差不多,这里就不多介绍了。

以管理员身份运行 start.bat ,启动后,查看电脑属性,其中系统内核中提到的的aarch64就是ARMv8架构支持的。

1689139328013.png


6、更改软件包源


银河麒麟v4的默认软件包源是光盘,这个可能不好搞。不过这个操作系统是基于ubuntu 16.04的,所以ubuntu 16.04的包源应该可以,但是还要注意针对ARM架构的包源和x64的不太一样,这里给出一个清华大学的镜像包源,国内访问比较快。

deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial main multiverse restricted universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-backports main multiverse restricted universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-proposed main multiverse restricted universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-security main multiverse restricted universe
deb http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-updates main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-backports main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-proposed main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-security main multiverse restricted universe
deb-src http://mirrors.ustc.edu.cn/ubuntu-ports/ xenial-updates main multiverse restricted universe


7、重用镜像


对于安装好系统的镜像,可以通过复制镜像文件的方式做个备份。

如果不小心把系统搞坏了,可以用备份的镜像重新启动一个干净的环境,避免漫长的系统安装过程。

也可以通过复制多个镜像文件,启动多个虚拟机,不过网络那块得想想怎么搞,这里就懒得去折腾了。


以上就是本文的主要内容,如有错漏欢迎指正。


作者:萤火架构

链接:https://juejin.cn/post/7072128381671718948

来源:稀土掘金

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
相关文章
|
14天前
|
关系型数据库 MySQL 数据库
【Mac os系统】安装MySQL数据库
本文详细介绍了在Mac OS系统上安装MySQL数据库的步骤,包括下载、安装、配置环境变量、启动服务、授权设置以及解决常见问题,并提供了一些常用的MySQL命令。
39 0
【Mac os系统】安装MySQL数据库
|
1月前
|
Linux 虚拟化 数据安全/隐私保护
部署05-VMwareWorkstation中安装CentOS7 Linux操作系统, VMware部署CentOS系统第一步,下载Linux系统,/不要忘, CentOS -7-x86_64-DVD
部署05-VMwareWorkstation中安装CentOS7 Linux操作系统, VMware部署CentOS系统第一步,下载Linux系统,/不要忘, CentOS -7-x86_64-DVD
|
4天前
|
Ubuntu 安全 iOS开发
Kylin操作系统安装及使用指南
Kylin操作系统安装及使用指南
|
8天前
|
编解码 安全 Linux
基于arm64架构国产操作系统|Linux下的RTMP|RTSP低延时直播播放器开发探究
这段内容讲述了国产操作系统背景下,大牛直播SDK针对国产操作系统与Linux平台发布的RTMP/RTSP直播播放SDK。此SDK支持arm64架构,基于X协议输出视频,采用PulseAudio和Alsa Lib处理音频,具备实时静音、快照、缓冲时间设定等功能,并支持H.265编码格式。此外,提供了示例代码展示如何实现多实例播放器的创建与管理,包括窗口布局调整、事件监听、视频分辨率变化和实时快照回调等关键功能。这一技术实现有助于提高直播服务的稳定性和响应速度,适应国产操作系统在各行业中的应用需求。
|
8天前
|
安全 Linux 网络安全
龙蜥Anolis OS:国产操作系统的逆袭之路,它将如何引领中国IT业翻天覆地的变化?揭秘未来数字世界的心脏!
【8月更文挑战第13天】在信息化时代,操作系统作为软硬件桥梁至关重要。国产操作系统如龙蜥Anolis OS,凭借其开源、灵活与安全特性,成为了探索未来发展的重要样本。基于Linux内核的Anolis OS不仅技术先进,生态完善,还针对国内用户习惯进行了优化,并通过如SELinux等安全技术确保系统稳固。其开源属性促进了社区的活跃发展与技术创新。随着政策支持和产业链成熟,Anolis OS正引领国产操作系统走向更广阔的应用领域,加速软硬件生态系统的成型,展现出无限发展潜力。
29 2
|
3天前
|
安全 应用服务中间件 网络安全
网工怕失业的,劝你玩点国产操作系统(文内福利)!
网工怕失业的,劝你玩点国产操作系统(文内福利)!
|
5天前
|
Linux Docker 容器
在CentOS操作系统上使用yum安装/使用/卸载Docker容器引擎
在CentOS操作系统上安装、配置、使用和卸载Docker容器引擎的详细步骤,包括配置Docker镜像加速的方法。
35 0
|
6天前
|
Ubuntu NoSQL 关系型数据库
在Ubuntu操作系统上安装/使用/卸载Docker容器引擎
这篇文章详细介绍了在Ubuntu操作系统上安装、配置、使用、基本操作以及卸载Docker容器引擎的步骤,包括配置Docker镜像加速和使用Docker部署Nginx、MySQL和Redis服务器的方法。
25 0
|
3月前
|
数据处理 编译器 数据库
x64 和 arm64 处理器架构的区别
x64 和 arm64 处理器架构的区别
|
3月前
|
弹性计算 编解码 运维
飞天技术沙龙回顾:业务创新新选择,倚天Arm架构深入探讨
阿里云、平头哥与Arm联合举办的飞天技术沙龙在上海举行,聚焦Arm Neoverse核心优势和倚天710计算实例在大数据、视频领域的应用。活动中,专家解读了倚天710的性能提升和成本效益,强调了CIPU云原生基础设施处理器的角色,以及如何通过软件优化实现资源池化和稳定性平衡。实例展示在视频编码和大数据处理上的性能提升分别达到80%和70%的性价比优化。沙龙吸引众多企业代表参与,促进技术交流与实践解决方案的探讨。
飞天技术沙龙回顾:业务创新新选择,倚天Arm架构深入探讨