arm64 虚拟机_在deepin操作系统上使用KVM虚拟机

本文介绍了如何在基于amd64的Deepin系统上利用KVM和QEMU创建arm64虚拟机。内容包括检查CPU虚拟化支持、安装所需软件、创建虚拟机的步骤,以及在过程中可能遇到的问题和解决方案,如配置虚拟机网络、添加设备、处理权限和UEFI支持问题。
摘要由CSDN通过智能技术生成

KVM概念

KVM

Kernel-based Virtual Machine基于内核的虚拟机,配合QEMU(处理器虚拟软件),需要CPU支持虚拟化技术(并且在BIOS里打开虚拟化选项),效率可达到物理机的80%以上。

架构图

c8796b2fb16610a43e041b0715e7f7f0.png

KVM安装

查询机器是否支持虚拟化:

759512173ab788d5069a4d1486f16ce0.png

如果在输出中不包含vmx或者svm标识,那么就意味着你的cpu不支持硬件虚拟化。

如果结果大于0,即说明cpu支持虚拟化。因为虚拟化需要CPU支持VMX或者 SVM指令集,VMX是Intel指令。SVM是AMD指令。

在amd64架构的deepin系统上安装qemu以及virsh虚拟机管理工具:

7f9a1ca6eb7ec4f98e292cd2b9be2e9d.png

aarch64架构的系统上安装下面的包:

sudo apt-get install libvirt0 libvirt-daemon qemu virt-manager bridge-utils libvirt-clients python-libvirt qemu-efi uml-utilities virtinst qemu-system

系统通过加载诸如kvm-intel.ko(基于 Intel 的机器)和kvm-amd.ko(基于 amd 的机器)的内核模块,使其成为管理程序hyervisor。

查看kvm模块是否加载:

e460c763555ed4720bf43cdfc1cb8459.png

安装 qemu 和 libvirtd 软件包之后,它就会自动启动并启用 libvirtd 服务。

77446d8c612b6efbf35656270113afb5.png

创建虚拟机

图形化工具(virt-manager)

界面显示:

501501bc569ae90bdb221c8e731daa1f.png

创建虚拟机:

8fec145efddb5e0a0dd9e6744b4580cb.png

使用本地镜像创建:

954409dcf77d66901c73e44936ede977.png

设置虚拟的CPU核心数和内存大小:

b57d82ea3605d32a7b390ce0a3727845.png

设置虚拟机网络,可以使用桥接,也可是使用net转发:

67b1d955f772ada828846f656429b517.png

添加虚拟显示设备:

97582760474bce440e5ae39e8fa00474.png

添加USB控制器设备:

8ecd5d8eac898a44001f63228b6a8f24.png

启动虚拟机,从本地debian镜像引导,进入安装界面

d0355e5b4faed57b4e9a20a529c07b83.png

命令行工具 (virsh)

创建存储池:

e9a3d76e82d7fe23352d7bf50084becf.png

配置磁盘映像:

cd35d1142b807f884a21d59b6ce3ddcf.png

创建虚拟机:

sudo virt-install --name=debian --disk path=/media/deepin/Home/deepin/Spoll1/debian10.img --graphics spice --vcpu=2 --ram=2048 --cdrom=/media/deepin/Home/deepin/debian-10.0.0-arm64-DVD-1.iso --network bridge=virbr0 --os-variant=linux

xml文件创建虚拟机:

f4d52949dfa3f5ff990373b880e29887.png

修改配置debian10-1.xml文件中的字段和字段分别如下:

fc826d8b2995293bb1ed1a58ef2a0df0.png

定义debian10-1虚拟机和启动该虚拟机:

cf078af1f25af34d41bd7f48c34c790f.png

遇到的问题

问题一:“unsupported configuration: CPU mode ‘custom’ for x86_64 kvm domain on x86_64 host is not supported”。

解决办法:重启主机。

问题二:虚拟机如何打开串口。

解决办法:虚拟机的启动参数加入“console=tty0 console=ttyS0,115200”。可以通过virsh console [vm id] 命令,进入虚拟机串口操作。

问题三:非root用户ssh远程登录,执行命令:virt-manager 报如下错误:

1ba998fc65442ed155fd06f4800dbe20.png

解决办法:执行下面命令,把当前用户加入到组libvirt:

b6583f20b072232dc1f360ef868e0c1c.png

问题四:x11转发virt-manager图形界面报错误:(virt-manager:12205): Gtk-WARNING **: cannot open display:

解决办法:使用如下方式连接 :ssh -Y deepin@ServerIP virt-manager

问题五:

创建虚拟机时报权限错误:monitor: Could not access KVM kernel module: Permission denied failed to initialize KVM: Permission

解决办法:

4e267e1a5e713cb4584f1a75dd6373ee.png

问题六:.aarch64服务器创建支持aarch64架构的虚拟机时,报libvirt版本不支持UEFI。

解决办法:重启系统,再创建一次。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值