当前位置:网站首页 > 编程语言 > 正文

ubuntu编译安装qemu(ubuntu编译安装onos)



KVM是指基于Linux内核的虚拟机(Kernel-base Virtual Machine),增加到Linux内核是Linux发展的一个重要里程碑,这也是第一个整合到Linux主线内核的虚拟化技术。在KVM模型中,每一个虚拟机都是一个由Linux调度程序管理的标准进程,你可以在用户空间启动客户机操作系统,一个普通的Linux进程有两种运行模式:内核和用户,KVM增加了第三种模式:客户模式(有自己的内核和用户模式)。

KVM仅仅是 Linux 内核的一个模块。管理和创建完整的 KVM 虚拟机,需要更多的辅助工具。

在 Linux 系统中,可以使用 modprobe 系统工具去加载 KVM 模块,如果用 RPM 安装 KVM软件包,系统会在启动时自动加载模块。加载了模块后,才能进一步通过其它工具创建虚拟机。

但仅有 KVM 模块是远远不够的,因为用户无法直接控制内核模块进行操作,因而必须有一个用户空间的工具。关于用户空间的工具,KVM 的开发者选择了已经成型的开源虚拟化软件 QEMU

QEMU 是一个强大的虚拟化软件,它可以虚拟不同的CPU构架。比如说在x86的CPU上虚拟一个Power的CPU,并利用它编译出可运行在Power上的程序。

KVM 使用了 QEMU 的基于x86的部分,并稍加改造,形成可控制KVM内核模块的用户空间工具QEMU-KVM

所以Linux发行版中分为kernel部分的KVM内核模块和QEMU-KVM工具。这就是 KVM 和 QEMU 的关系。

虽然QEMU-KVM工具可以创建和管理KVM虚拟机,但是由于QEMU 工具效率不高,不易于使用,RedHat 为 KVM 开发了更多的辅助工具,比如 libvirtlibguestfs 等。

Libvirt 是一套提供了多种语言接口的 API,为各种虚拟化工具提供一套方便、可靠的编程接口,不仅支持 KVM,而且支持 Xen 等其他虚拟机。

使用 libvirt,只需要通过libvirt提供的函数连接到KVM或Xen宿主机,便可以用同样的命令控制不同的虚拟机了。

Libvirt 不仅提供了 API,还自带一套基于文本的管理虚拟机的命令virsh,可以通过使用 virsh 命令来使用 libvirt 的全部功能。

如果用户希望通过图形用户界面管理KVM,这就是virt-manager工具使用的功能。他是一套用python编写的虚拟机管理图形界面,用户可以通过它直观地操作不同的虚拟机。Virt-manager就是利用 libvirt 的 API 实现的。

宿主机是虚拟机的物理基础,虚拟机存在于宿主机中,与宿主机共享使用硬件。宿主机的运行是虚拟机运行的前提与基础。也称宿主机为主机(host)。

虚拟机(Virtual Machine)指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。也称虚拟机为客户机(guest)。

① 验证CPU是否支持硬件虚拟化:

 
  

如果看到有输出结果,即证明cpu支持虚拟化。vmx属于inter处理器,svm属于amd处理器。

② 检查 VT 是否在 BIOS 中启用

 
  

安装 KVM 和相关工具

 
  

启动并启用 Libvirt 服务

 
  

验证 KVM 安装

 
  

加载kvm内核

 
  

方式一、NAT网卡

当安装好kvm,会自动新建一个虚拟网卡,这个虚拟网卡就是NAT模式的网卡

 
  

如果希望主机的网卡是NAT模式,直接指定这个网卡就可以了

方式二、网卡桥接模式

① 配置网卡桥接模式

 
  

② 使用命令ifconfig查看自己的ip等

③新建enp0s3网卡的桥接网卡

 
  
 
  

④ 生效

 
  

⑤ 查看网络

 
  

新建磁盘文件

 
  

新建一个20G的磁盘,格式为qcow2

上传镜像

 
  

在这里插入图片描述

新建虚拟机

 
  

此时,可通过vnc viewer连接此安装进程开启的vnc连接端口(默认是5900端口)

查看端口

 
  

参数说明

  • –name 指定虚拟机名称
  • –memory 分配内存大小,单位M。
  • –vcpus 分配CPU核心数,最大与实体机CPU核心数相同
  • –disk 指定虚拟机镜像,size 指定分配大小单位为G。
  • –network 网络类型,此处用的是默认,一般用的都是bridge桥接,这个br0就是在之前宿主机上创建好的一个桥接设备。
  • –accelerate 加速参数,在linux系统安装开始就要注意添加提高性能的一些参数,后面就不需要做一些调整了。
  • –cdrom 指定安装镜像iso
  • –vnc 启用VNC远程管理,一般安装系统都要启用。
  • –vncport 指定VNC 监控端口,默认端口为5900,端口不能重复。一般不设置此参数。
  • –vnclisten 指定VNC 绑定IP,默认绑定127.0.0.1,这里改为 0.0.0.0。
  • –noautoconsole 使用本选项指定不自动试图连接到客户机控制台。默认行为是调用一个VNC客户端显示图形控制台,或者运行 “virsh” "console"命令显示文本控制台。

通过VNC Viewer连接宿主机的5900端口

img

img

点击连接,就可以连接到虚拟机,看到安装页面

img

注意

在安装完成系统后,会提示重启,但是,但是,但是,虚拟机并不会重启,而是关机

 
  

可以看到,虚拟机已经看不到了

但是可以通过查看所有虚拟机来查看

 
  

可以看到,是关机的

这个时候,只要开机就好了

 
  

1、查看KVM虚拟机配置文件及运行状态

(1) KVM虚拟机默认配置文件位置: /etc/libvirt/qemu/

autostart目录是配置kvm虚拟机开机自启动目录

(2) virsh命令帮助
 
  

或直接virsh命令(进入交互模式)

然后再执行子命令。

如下所示。

 
  
(3) 查看kvm虚拟机状态

显示虚拟机列表:

 
  

2、KVM虚拟机开机

启动虚拟机:

 
  

3、KVM虚拟机关机或断电

(1) 关机

在安装KVM linux虚拟机必须配置此服务。

 
  
(2) 强制关闭电源
 
  
(3)重启虚拟机

重启虚拟机:

 
  
(4)查看kvm虚拟机配置文件
 
  

4、通过配置文件启动虚拟机

 
  

5、配置开机自启动虚拟机

 
  

autostart目录是kvm虚拟机开机自启动目录,可以看到该目录中有KVM配置文件链接。

6、导出KVM虚拟机配置文件

 
  

KVM虚拟机配置文件可以通过这种方式进行备份。

7、添加与删除KVM虚拟机

(1) 删除kvm虚拟机
 
  

说明:该命令只是删除wintest01的配置文件,并不删除虚拟磁盘文件。

(2) 重新定义虚拟机配置文件

通过导出备份的配置文件恢复原KVM虚拟机的定义,并重新定义虚拟机。

 
  

8、编辑KVM虚拟机配置文件

 
  

9、其它virsh命令

(1) 挂起服务器
 
  
(2) 恢复服务器
到此这篇ubuntu编译安装qemu(ubuntu编译安装onos)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就! 
  

                            

版权声明


相关文章:

  • vs怎么用image控件导入图片(vs image控件)2026-02-08 17:27:08
  • 公司的阶级(公司的阶层)2026-02-08 17:27:08
  • tip期刊审稿速度(tip期刊投稿)2026-02-08 17:27:08
  • wifi字典破解密码(破解wifi密码字典包下载)2026-02-08 17:27:08
  • ad20原理图怎么生成元件库(ad20中自己绘制元件放到原理图)2026-02-08 17:27:08
  • 网页传输文字怎么传(如何用网页传输文件)2026-02-08 17:27:08
  • linux修改文件权限的命令(Linux修改文件权限的命令是什么)2026-02-08 17:27:08
  • wifi字典(wifi字典破解APK)2026-02-08 17:27:08
  • 提示未安装打印机控件(打印时说未安装打印机)2026-02-08 17:27:08
  • 体育游戏的分类(体育游戏的分类一般选择)2026-02-08 17:27:08
  • 全屏图片