在x86_64主机上仿真一个aarch的 kvm虚拟机

前情概述:

        项目上需要有arrch环境的测试机器 但是机房里面只有X86的,此时需要通过kvm的虚拟机进行仿真一个arrch指令集的操作系统(可能是Centos 也可能是openEuler 也可能是ubuntu),本文主要记录在X86的ubuntu操作系统上通过qemu-system-arm仿真一个aarch操作系统

一、测试安装CentOS(aarch)

1.安装kvm环境

apt install -y qemu-kvm virt-manager libvirt-daemon-system

2.安装aarch相关环境

apt install -y uml-utilities bridge-utils qemu-system-arm qemu-efi-aarch64 cloud-image-utils  -y

3.下载uefi控件(只支持Centos)

也可以使用上方安装的qemu-efi-aarch64 带的QEMU_EFI.fd(亲测aarch的openEuler也支持)

4.创建磁盘文件

qemu-img create /var/lib/libvirt/images/centos7_arm64.img   10G

5. 配置虚拟机参数和vnc端口

qemu-system-aarch64 -m 1024 -cpu cortex-a57 -smp 2 -M virt -bios /opt/QEMU_EFI.fd  -nographic -drive if=none,file=/home/zhangsan/CentOS-7-aarch64-Minimal-2009.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=/var/lib/libvirt/images/centos7_arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 -vnc :10

6.紧接着命令行会切换到进程安装页面

7.按着数字序号一次选择安装选项

二、测试安装openEuler(aarch)

操作系统环境软件包补全,此处和章节一相同,略过

1.创建磁盘文件

qemu-img create /var/lib/libvirt/images/openEuler2203_aarch64.img 10G

2.创建并启动虚拟机并用镜像安装

qemu-system-aarch64 -m 1024 -cpu cortex-a57 -smp 2 -M virt -bios /usr/share/qemu-efi-aarch64/QEMU_EFI.fd -nographic -drive if=none,file=/opt/openEuler-22.03-LTS-aarch64-dvd.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=/var/lib/libvirt/images/openEuler2203_arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 -vnc :1

和章节一区别:virt-bios 配置需要修改成 /usr/share/qemu-efi-aarch64/QEMU_EFI.fd

3.需要注意进入到安装选择页面后 按e编辑grub参数

避免出现只有图形页面输出,而宿主机的内核驱动框架版本不一致 导致安装页面无法正常展示的情况

console=tty0改成

console=ttyAMA0 inst.text 让安装页面通过命令行输出

4.ctrl+x  等待启动 ,使用命令行完成安装

5.按序号选择 依次配置 ,选择完成后一路c,然后按b开始安装

三、一些安装可以使用的参数

1.需要把上述的安装过程 通过vnc进行界面话完成的话 可以使用

-vnc :1  -monitor stdio 参数 再通过电脑上的vnc登录到虚拟机操作

示例

qemu-system-aarch64 -m 1024 -cpu cortex-a57 -smp 2 -M virt -bios /usr/share/qemu-efi-aarch64/QEMU_EFI.fd    -drive if=none,file=/home/zhangsan/CentOS-7-aarch64-Minimal-2009.iso,id=cdrom,media=cdrom -device virtio-scsi-device -device scsi-cd,drive=cdrom -drive if=none,file=/var/lib/libvirt/images/centos7_arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 -net user   -vnc :20   -monitor stdio

接着到windows电脑上打开  vnc进入安装页面

2.如果是已经安装好的磁盘镜像文件 需要直接载入使用

启动一个已经安装好的虚拟机磁盘镜像文件,并且通过vnc连接

qemu-system-aarch64 -m 1024 -cpu cortex-a57 -smp 2 -M virt -bios /usr/share/qemu-efi-aarch64/QEMU_EFI.fd -drive if=none,file=/opt/openEuler-22.03-LTS-aarch64-dvd.iso,id=cdrom,media=cdrom -drive if=none,file=/var/lib/libvirt/images/openEuler2203_arm64.img,id=hd0 -device virtio-blk-device,drive=hd0 -vnc :1 -monitor stdio

执行后vnc连接效果:

参数配置(存储、网络等) 参考之前的博文

qemu基本命令参数-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

没头脑先森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值