千家信息网

虚拟化技术QEMU-KVM的示例分析

发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章将为大家详细讲解有关虚拟化技术QEMU-KVM的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一.QEMU、KVM、QEMU-KVMQEMU提供一系
千家信息网最后更新 2026年10月31日虚拟化技术QEMU-KVM的示例分析

这篇文章将为大家详细讲解有关虚拟化技术QEMU-KVM的示例分析,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一.QEMU、KVM、QEMU-KVM

QEMU提供一系列的硬件模拟设备(CPU,网卡,磁盘等),客户机指令都需要QEMU翻译,因而性能较差。KVM是linux内核提供的虚拟化,可以用来进行vCPU的创建与运行,虚拟内存的地址空间分配,指令执行效率较高,但缺少IO设备的虚拟化。QEMU-KVM就是KVM与QEMU的结合,KVM负责CPU虚拟化+内存虚拟化,QEMU模拟其它IO设备。

二.安装并创建虚拟机

安装qemu-kvm软件

faramita2016@linux-l9e6:~> zypper install qemu-kvm // Ubuntu系统使用apt-get install qemu-kvm

创建qcow2格式虚拟机磁盘文件

faramita2016@linux-l9e6:~> qemu-img create -f qcow2 vdisk.img 5G // 磁盘大小5G

使用debian镜像安装虚拟机,order=dc优先使用CD-ROW(d),后使用硬盘(c),内存默认128m,使用-m 512指定

faramita2016@linux-l9e6:~> qemu-kvm -cpu host -cdrom debian-9.4.0.iso -hda vdisk.img -boot order=dc

三.设置虚拟机使用网桥bridge模式

宿主机中执行,qemu-bridge-helper增加当前用户可执行权限,用来自动添加网络后端tap设备

faramita2016@linux-l9e6:~> sudo chmod o+x /usr/lib/qemu-bridge-helper

宿主机中执行,-net nic为虚拟机创建nic网卡(网络前端),-net bridge指定宿主机中使用网桥(网络后端)

faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda vdisk.img -net nic -net bridge,br=br0 // 指定网桥br0

虚拟机中执行,编辑/etc/network/interfaces,设置静态IP

root@debian:~# vi /etc/network/interfaces# The primary network interfaceallow-hotplug ens3#iface ens3 inet dhcpiface ens3 inet staticaddress 10.0.0.8netmask 255.0.0.0gateway 10.0.0.1hwaddress ether 52:54:00:12:34:56  // 设置mac地址,前3组不变root@debian:~# ifup ens3  // 打开ens3网络接口,ifdown关闭网络接口root@debian:~# /etc/init.d/networking restart  // 重启网络服务

虚拟机中执行,编辑/etc/resolv.conf,设置DNS

root@debian:~# vi /etc/resolv.confnameserver 8.8.8.8  // Google DNS

四.设置虚拟机为非图形模式

虚拟机中执行,编辑/etc/default/grub文件,添加console=ttyS0启动参数

root@debian:~# vi /etc/default/grub GRUB_DEFAULT=0  // 默认启动项GRUB_TIMEOUT=0  // 默认菜单项停留时间GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`GRUB_CMDLINE_LINUX_DEFAULT="quiet"   // 默认内核启动参数GRUB_CMDLINE_LINUX="console=ttyS0"  // 手动添加内核启动参数,添加console=ttyS0

虚拟机中执行,更新grub配置,并重启

root@debian:~# update-grubroot@debian:~# shutdown -h now

a.宿主机中执行,添加-nographic参数创建虚拟机,当前shell前台创建虚拟机

faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda vdisk.img -net nic -net bridge,br=br0 -nographic

b.宿主机中执行,添加-display none -daemonize参数创建虚拟机,当前shell后台创建虚拟机

faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda vdisk.img -net nic -net bridge,br=br0 -display none -daemonize

五.以只读方式启动虚拟机

a.创建一个快照

用qemu-img命令创建一个原始镜像的快照

faramita2016@linux-l9e6:~> qemu-img create -f qcow2 -b vdisk.img snapshot.img

使用快照文件启动虚拟机

faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda snapshot.img -net nic -net bridge,br=br0 -nographic

b.使用临时快照

原理:创建一个临时快照,虚拟机启动之后,自动删除快照文件

faramita2016@linux-l9e6:~> qemu-kvm -cpu host -hda vdisk.img -net nic -net bridge,br=br0 -snapshot -nographic

关于"虚拟化技术QEMU-KVM的示例分析"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

快照 网络 参数 宿主 宿主机 文件 设备 内存 内核 磁盘 篇文章 网桥 技术 示例 分析 地址 指令 接口 更多 模式 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 博彦科技互联网金融 中关村互联网科技集团 关于新基建和互联网科技 青岛互联网科技公司 广州凡科互联网科技 深圳期待互联网科技 佰商互联网科技有限公司 深圳互联网科技怎么样 互联网实体化科技化 深圳前海聚择互联网科技有限公司 科技与互联网哪个更好 福建科技产业互联网发展 互联网5g黑科技有哪些 新兴科技互联网创新大赛颁奖典礼 互联网科技如何创业 互联网科技圈年度人物 浙南科技城互联网大厦招聘 工业互联网科技创业 数字科技和互联网金融哪个好 中国主要互联网科技公司 小米移动互联网科技园 上海喔噻互联网科技有限公司 国智互联网科技 山东吉时兔互联网科技有限公司 中国最先进互联网科技公司 哈尔滨屹滨互联网科技有限公司 中国科技创新与世界互联网大会 富国互联网金融科技混合基金 图游互联网科技 2021世界互联网领先科技成果发布
0