qemu虚拟机(基于Ubuntu20的qemu-kvm安装虚拟机)

本文目录
- 基于Ubuntu20的qemu-kvm安装虚拟机
- kvm 创建虚拟机qemu-kvm 和virt-install的区别
- CentOS 7上安装qemu kvm进行虚拟化
- 如何使用macbookair下载qemu虚拟机
- qemu启动虚拟机的几种方式
- QEMU/KVM查看虚拟机系统注册表的方法
- 如何在Qemu虚拟机中安装Windows XP系统
- [QEMU网络配置] 通过网桥使宿主机和虚拟机互通网络
- qemu能模拟全部x86指令吗
基于Ubuntu20的qemu-kvm安装虚拟机
环境:
本地win10(win7同样适用)
VM14
在VM上装的是Ubuntu20.04
在此基础上安装kvm虚拟机,并在kvm虚拟机中安装guest操作系统Ubuntu20.04
如果cpu数量为0的话说明不支持虚拟化,解决方案:关闭VM上的Ubuntu,进入设置-处理器,勾选上第一个(因为此时我的Ubuntu是开着的所以是灰的,关闭客户机才可以操作)
接下来查看确认下系统是否支持kvm
如果出现以下的结果那就表明我们可以进行第二步操作了~
接下来确认来虚拟化守护进程libvirt-daemon是否在进行
检查kvm模块是否加载
kvm在安装之后自动会生成一个名为virbr0的网络,网上是说可以连接外网不能局域网,但是我使用这个的话一直显示网络连接失败。于是乎我们需要创建一个网桥(如果此时是使用xshell连接远程Ubuntu的话,建议进入Ubuntu使用自带终端完成)
方法一:(实践之后发现只适合临时创建,重启后消失)
方法二、
在/etc/netplan/下新建一个配置文件00-installer-config.yaml(名字随便)
文件内容为:
应用一下
通过virt-manager创建虚拟机
在你连接VM Ubuntu的xshell会话设置一下,SSH-隧道,勾选上转发到X11连接到xmanager,确定后断开会话重连下
新建虚拟机
步骤和你在VM上安装Ubuntu没区别,在此不赘述,提前在VM的Ubuntu上准备好你接下来要安装的Ubuntu ISO镜像文件。
提醒一下一定要勾选安装前自定义配置,更该下【显示协议VNC】的设置,不然最后一步账号名称输入的时候怎么也输不出内容来!!!!
第三步创建的网络也可以在这里选上了!
完成后进入配置页面,将【显示协议VNC】做增加en-us键映射
之后就可以愉快的等待安装完成啦~~
kvm 创建虚拟机qemu-kvm 和virt-install的区别
首先要了解qemu和libvirt。
QEMU(Quick Emulator) 是一个广泛使用的开源计算机 仿真器和虚拟机。是一款免费的、开源的、纯软件实现的、可执行硬件虚拟化的 VMM。
libvirt是目前使用最为广泛的对KVM虚拟机进行管理的工具和API,本质上是一些被提供的库函数(C语言), 它引用了面向驱动的架构设计, 对所有的虚拟化技术都提供了相应的驱动和统一的接口, 用于管理物理机的虚拟机。 Libvirt 具有非常强的可扩展性, 可供本地或远程的 virsh 调用。
qemu-kvm 命令属于QEMU,virt-install命令属于libvirt。libvirt调用qemu-kvm来管理虚拟机。如果Hypervisor是KVM,命令参数不一样而已,没区别。
CentOS 7上安装qemu kvm进行虚拟化
egrep -o ’(vmx|svm)’ /proc/cpuinfo
yum groupinstall "Virtualization Host"
yum install qemu-kvm qemu-img virt-manager libvirt virt-install virt-viewer
qemu-kvm:qemu模拟器
qemu-img:qemu磁盘image管理器
virt-install:用来创建虚拟机的命令行工具
libvirt:提供libvirtd daemon来管理虚拟机和控制hypervisor
virt-viewer:图形控制台
virt-manager:图形实用程序
开机启动libvirt
systemctl enable libvirtd
启动libvirt
systemctl start libvirtd
启动状态
systemctl status libvirtd
yum install virt-install
yum install virt-manager
参考
***隐藏网址***
***隐藏网址***
如何使用macbookair下载qemu虚拟机
在macbookair上安装qemu需要注意的是官方要求macbookair最低要求为10.5系统,但建议使用macbookair10.7及以上系统依赖安装qemu。
首先安装qemu,在安装树莓派操作系统,安装内核运行,关于QEMU起动时候的选项的说明一下,kernelkernelqemu使用下载的内核映像kernelqemu。
qemu启动虚拟机的几种方式
验证一些平台无关的特性的时候,如果用VM代替真实的物理机无疑更高效。下面列举一些Qemu启动VM的方式,顺便澄清一些概念。
本文验证需要的环境:
1. ubuntu 18.04
2. 安装软件:
a) sudo apt-get install qemu-kvm libvirt-bin
b) vncviewer to access VM via X window(optional)
***隐藏网址***
3. VM镜像
xx.iso 或者 xx.img
方式1是用libvirt以xml方式启动VM,VM所有的配置都放在xml文件中,优点是不用输入复杂的参数。
如果想用qcow2格式的启动镜像,可以用如下命令转换img。
创建test.xml,内容如下。注意boot dev如果是cdrom则是iso启动,如果是hd则是硬盘启动。
然后创建启动虚拟机
命令行方式
最简方式,这种方式启动后,需要vncview连接VM
用bzImage和rootfs启动
启用网卡,启动成功后可以在host上ifconfig查看到tap0设备,sudo brctl addif virbr0 tap0将tap0加入virbr0网桥。
参考: libvirt
QEMU/KVM查看虚拟机系统注册表的方法
libguestfs-tools套件提供了一个基于QEMU的磁盘映像去查找这个磁盘映像中安装的Windows操作系统的具体注册表信息,甚至是进行改动(当然不安全,目前可能不成熟,可能损坏映像文件)。
这个套件目前我只在centos和redhat的虚拟化环境中找到了,具体安装方法很简单:
复制代码
代码如下:
yum install libguestfs libguestfs-tools libguestfs-winsupport
安装完成之后,使用virt-win-reg既可以对已经安装操作系统的虚拟机映像文件进行注册表的读取操作,不过要注意的是目前只推荐在虚拟机停止状态下获取注册表的信息,如果在启动模式下获取注册表或者修改注册表信息都可能导致虚拟机映像文件损坏。
具体使用方法如下:
复制代码
代码如下:
virt-win-reg win9-clone ’HKEY_LOCAL_MACHINE/Software/Microsoft/Windows/CurrentVersion/Uninstall’
其中win9-clone是虚拟机的名字,可以通过libvirt的virsh list –all命令查询得出,不过一定确保虚拟机已经是停止的状态,否则可能造成磁盘损坏。
上面的命令最终执行的结果如下:
复制代码
代码如下:
@=hex(1):00,00/pp
"QuietUninstallString"=hex(1):52,00,75,00,6e,00,64,00,6c,00,6c,00,33,00,32,00,20,00,49,00,65,00,64,00,6b,00,43,00,53,00,33,00,32,00,2e,00,64,00,6c,00,6c,00,2c,00,42,00,72,00,61,00,6e,00,64,00,43,00,6c,00,65,00,61,00,6e,00,49,00,6e,00,73,00,74,00,61,00,6c,00,6c,00,53,00,74,00,75,00,62,00,73,00,00,00
"RequiresIESysFile"=hex(1):31,00,30,00,30,00,2e,00,30,00,00,00/pp
"SystemComponent"=dword:00000001/pp
@=hex(1):00,00/pp
@=hex(1):00,00/pp
@=hex(1):00,00/pp
@=hex(1):00,00/pp
@=hex(1):00,00/pp
@=hex(1):00,00/pp
@=hex(1):00,00/pp
@=hex(1):00,00/pp
@=hex(1):00,00/pp
"RequiresIESysFile"=hex(1):34,00,2e,00,37,00,31,00,00,00/pp
@=hex(1):00,00/pp
"QuietUninstallString"=hex(1):72,00,75,00,6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,73,00,65,00,74,00,75,00,70,00,61,00,70,00,69,00,2e,00,64,00,6c,00,6c,00,2c,00,49,00,6e,00,73,00,74,00,61,00,6c,00,6c,00,48,00,69,00,6e,00,66,00,53,00,65,00,63,00,74,00,69,00,6f,00,6e,00,20,00,44,00,65,00,66,00,61,00,75,00,6c,00,74,00,55,00,6e,00,69,00,6e,00,73,00,74,00,61,00,6c,00,6c,00,20,00,31,00,33,00,32,00,20,00,43,00,3a,00,5c,00,57,00,49,00,4e,00,44,00,4f,00,57,00,53,00,5c,00,49,00,4e,00,46,00,5c,00,50,00,43,00,48,00,65,00,61,00,6c,00,74,00,68,00,2e,00,69,00,6e,00,66,00,00,00
"UninstallString"=hex(1):72,00,75,00,6e,00,64,00,6c,00,6c,00,33,00,32,00,2e,00,65,00,78,00,65,00,20,00,73,00,65,00,74,00,75,00,70,00,61,00,70,00,69,00,2e,00,64,00,6c,00,6c,00,2c,00,49,00,6e,00,73,00,74,00,61,00,6c,00,6c,00,48,00,69,00,6e,00,66,00,53,00,65,00,63,00,74,00,69,00,6f,00,6e,00,20,00,44,00,65,00,66,00,61,00,75,00,6c,00,74,00,55,00,6e,00,69,00,6e,00,73,00,74,00,61,00,6c,00,6c,00,20,00,31,00,33,00,32,00,20,00,43,00,3a,00,5c,00,57,00,49,00,4e,00,44,00,4f,00,57,00,53,00,5c,00,49,00,4e,00,46,00,5c,00,50,00,43,00,48,00,65,00,61,00,6c,00,74,00,68,00,2e,00,69,00,6e,00,66,00,00,00/pp
@=hex(1):00,00
该命令的其他用法可以使用man virt-win-reg获取相关帮助信息,用法还是很多的哦
如何在Qemu虚拟机中安装Windows XP系统
qemu 是一个跨平台的免费的模拟机,包括Linux系列、Mac OS系列、FreeBSD系列、Windows系列等等作业系统都可以模拟。
我也是第一次使用,走了不少弯路,现在总结一下。
如果有现成的镜像,直接从命令行启动即可。例如:
qemu -L . harddisk.img
参数 -L 指定虚拟bios环境路径,一般都放在同一目录下,所以用 -L . 就行了(注意大写)
默认使用128M 仿真内存,如果要自定义内存体大小可用 -m 参数,如:
qemu -L . -m 64 linux.img
使用软碟镜像,并引导:
qemu -L . -fda floopy.img -boot a
可用-fda -fdb 参数指定两张软碟镜像,-boot 可以指定从软驱、光驱引导
如果使用多个硬碟,可选参数 -hda,-hdb,-hdc,-hdd
使用光碟,参数 -cdrom
2000/xp的机器,qemu支持直接访问主机设备,如光驱,软驱。98/me不支持。
下面介绍我在98下使用QEMU安装XP的经过:
首先用配套工具qemu-img.exe 创建一个新的磁盘镜像
qemu-img create -f qcow mydisk.img 1000M
指定使用qcow格式创建的镜像是动态的,也就是随著使用过程改变大小。比如上面的1000M大小空镜像,实际占用不到几K,当向其中装入内容后才随之增大。
(qemu 也兼容VMware 的vmdk格式镜像。)
安装windows之前先要对磁盘分区、格式化。呵呵,我们论坛的DOS启动盘很多随便哪一个就可以做这个工作。我用的工具是Disk Genius
qemu -L . mydisk.img -fda diskgen.img -boot a
在qemu中使用Disk Genius,和DOS中一样速度上完全没有差别,甚至更快一些。
本来我是想通过GHOST的方式安装系统,但是经过一整天的摸索,我的结论是:
win9x + qemu0.82 +ghost 7.5以上版本都不能正常运行。所以只能采用常规安装。
找一张XP安装光碟镜像,从光驱引导开始安装:
qemu -L . mydisk.img -cdrom xp.iso -boot d
顺别说一下我的主机配置为 P4 1.7G 256M
这样从QEMU中安装XP总共花了35分钟,还算很快。
然后就可以运行XP了~当然这个XP的速度明显下降,主要是内存资源紧张。如果主机内存体比较大可以让QEMU多分一点。
QEMU可以仿真多种声卡,我让XP使用了ENSONIQ AudioPCI ES1370 声卡
qemu -L . mydisk.img -soundhw es1370
再次启动XP,就可以听到声音了~
在QEMU 中上网
在网上有许多文章 主机都是XP或LINUX,用9x相对困难一些。本来我的机器上是双系统一个是winME lite 我在这上面折腾了一天也没能联网。后来换到另一个完全安装的win98联网才成功的。
qemu 需要两个 -net参数
-net nic 仿真网卡 ,我采用的是RTL8139
-net user 采用DHCP client 方式分享主机网络资源
qemu -L . mydisk.img -net user -net nic,model=rtl8139
进入XP,在控制面板/网络连接 设置 IP,DNS都是自动选择
本地连接成功后会自动分配IP地址10.2.0.15,这时候就可以访问internet了
在使用途中更换光碟
如果已经进入QEMU仿真系统还要换另外的光碟镜像,首先在系统中弹出光碟。ctrl+alt+2 切换到QEMU控制台 输入 change cdrom new.iso 然后ctrl+alt+1 返回系统新的光碟就已经装上了。
第三方工具
有一个比较流行的加速器kqemu ,但不兼容Win98 所以最好使用qemu的 -no-kqemu 参数
英国人做了一个图形界面QEMU Manager,用来仿真多个系统时候比较方便。不过我认为在Win98下,还是用命令行比较稳定。
QEMU 的确是非常优秀的系统仿真工具,推荐大家使用。
[QEMU网络配置] 通过网桥使宿主机和虚拟机互通网络
宿主需要有samba/配置好samba的用户名和共享目录
smb.conf
宿主机操作
虚拟机启动脚本
宿主机访问该虚拟机
ssh 127.0.0.1 -p 5555
虚拟机访问该共享目录
smbclient -L //10.0.2.2 -U samba1%123
虚拟机挂载该目录
sudo mount -t cifs //10.0.2.2/share ~/mnt_host -o username=samba1,password=123
*启动qemu
(啥也不做,都是默认配置)
qemu能模拟全部x86指令吗
qemu能模拟全部x86指令。也可以模拟各种ARM板子还可以模拟各种外设,百问网对QEMU做了很多改进支持更多硬件支持更多GUI现实,让用户可以更有真实感地使用QEMU来模拟IMX6ULL板子。
qemu模拟全部x86指令的原理
首先Qemu本身并不是KVM的一部分,而是一整套完整的虚拟化解决方案,它是纯软件实现的,包括处理器虚拟化内存虚拟化以及各种虚拟设备的模拟,但因为是纯软件模拟,所以性能相对比较低,而广义的KVM实际上包含两部分。
一部分是基于LINUX内核支持的KVM内核模块,另一部分就是经过简化和修改Qemu,KVM内核模块模拟处理器和内存以支持虚拟机的运行,Qemu主要处理I或O以及为用户提供一个用户空间工具来进行虚拟机的管理,两者相互结合相辅相成,构成了一个完整的虚拟化平台。

更多文章:
王者荣耀最新版本下载2021(王者荣耀面对面游戏开房间后的观战席怎么没了)
2026年11月3日 14:20
99读书人的99读书人旗下99网上书城?99网上书城的大事记
2026年4月20日 08:45
360驱动大师安装打印机驱动(360驱动大师如何安装打印机驱动)
2026年11月1日 09:10
slg安卓类汉化游戏网站(最新汉化galgame游戏.最好给个网站可以下载的,)
2026年1月24日 03:00
360木马查杀软件(杀毒软件有什么推荐吗360安全卫士木马查杀效果怎么样)
2026年4月14日 01:15
虚空掠夺者怎么出装(lol跪求大神 上单中单虚空掠夺者的技能进化顺序加点、出装)
2025年5月4日 05:00














