主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

Kvm、VMware、Virtualbox、Xen、Qemu 等
回复
头像
SleetOfSnow
帖子: 11
注册时间: 2010-05-31 3:03

主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

#1

帖子 SleetOfSnow » 2010-05-31 5:52

有关kvm的使用说明其实不少,但基本都是命令行,对于新手来说不够直观,而且都没有提到关于virtio驱动的安装。于是就再发一篇。
使用virtio接口的虚拟硬盘和虚拟网络的性能不是默认的那个IDE接口能比的。

从安装虚拟机到运行虚拟系统,全部只要三次使用到命令行。
基于10.04,理论上也适用于9.10。
以下,开始。

确保CPU支持并开启虚拟化:

代码: 全选

egrep '(vmx|svm)' /proc/cpuinfo
有红字(或者其他与众不同的颜色),并且在bios里开启虚拟化。
如果没有虚拟化,放弃吧……

确保源完整,可以在设置“软件源”,把第一个选项卡的所有选项都选中(源代码不用选)。然后新立得,先要在首选项里选中“把推荐的软件包视作依赖的软件包”,然后标记并安装virt-manager、virt-viewer,新立得会自动把kvm作为依赖标记的。

这里插一句:kvm已经和qemu合并了,源里”kvm“和”qemu“都是指向“qemu-kvm”的虚包,源里的版本已经够新的了。

要给virt-manager管理员权限,否则是无法自己创建虚拟网络的:

代码: 全选

sudo gedit /usr/bin/virt-manager
当然你可以使用任何你喜欢的文本编辑器替换掉gedit。
然后把:

代码: 全选

exec python "/usr/share/virt-manager/virt-manager.py" "$@"
修改成:

代码: 全选

exec gksu python "/usr/share/virt-manager/virt-manager.py" "$@"
保存,关闭。

从“应用程序”的“系统工具”里运行“虚拟系统管理器”,如果顺利的话应该能看到localhost (QEMU),右键,详情,虚拟网络。
然后就自己创建虚拟网络了。前面几页的设定可以保持默认,注意“连接到物理网络”页面里要选择“转发到物理网络”,模式用NAT。
不要选择“路由的”除非你在路由后面并知道路由的子网掩码的意义。
完成虚拟网络设置之后选中虚拟网络的“自动启动”。
还是在localhost (QEMU)上右键,新建。
步骤1里:输入要创建的虚拟机的名称,下一步。
步骤2里:使用iso镜像,这个随便选,实际上我们并没有用这里选择的镜像来安装系统。
步骤3默认就行,反正之后可以另行设置。
步骤4是重点。先选中“选择管理的或者其他现有储存”,浏览,新建卷。注意把名称里的后缀去掉(程序会自动添加一个后缀,如果不去掉就是两个后缀了……)格式建议选qcow2,当然也可以默认。最大容量就是虚拟机的C盘大小,自己看着办吧……其他默认就好了。完成之后选择你刚才创建的文件,然后一定要去除“为虚拟机启用储存”的勾选框
步骤5里的高级选项选择刚才自己创建的虚拟网络,完成。
然后会弹出一个虚拟机的监视窗口,把它扔在那里吧。
下载适用于WindowsXP的virtio驱动软盘镜像。
http://www.linux-kvm.com/sites/default/ ... floppy.img
顺便下载一个virtio驱动光盘镜像,用于安装虚拟系统的网络驱动。
http://www.famzah.net/download/kvm/virt ... iostor.iso
附件是这两个的打包。
virtio-driver.7z
32、64位WindowsXP、2003用virtio驱动。
(501.54 KiB) 已下载 5423 次
接下来把系统安装到刚才创建的虚拟硬盘里:

代码: 全选

sudo kvm -boot d -cdrom [Windows安装盘镜像的完整路径和文件名] -drive file=[虚拟硬盘的完整路径和文件名],if=virtio,boot=on -fda [virtio驱动软盘镜像的完整路径和文件名] -m 600
其中虚拟硬盘默认放在 /var/lib/libvirt/images/ 文件夹里,文件名默认和虚拟机的名称是一样的。驱动镜像是以img为后缀的那个,不要选错!
回车,F6(也就是在安装时从软盘加载额外的驱动),s,选择驱动。注意64位XP使用的是64位2003的驱动。
接下来就是安装XP了。中间会有提示是否继续安装没有徽标的驱动,点继续就可以了。
注意kvm是ctrl+alt来控制鼠标捕获的,另外这时运行的kvm对组合键(ctrl、shift之类)的传递有问题(以后用虚拟系统管理器的时候不会有这个问题),所以设置密码的时候尽量简单一些,八个“1”之类的……
安装完毕之后直接把虚拟XP关机吧,等虚拟机的窗口关闭之后就可以把终端关掉了。
回到刚才虚拟机的监视窗口,“查看”里选择“详情”。这里是管理虚拟机的硬件设定的地方。CPU数量和内存大小还是自己看着办。
接下来是重点:
IDE CDROM 1,也就是虚拟光驱。把原来的断开掉,连接,选那个virtio驱动光盘镜像(iso后缀),应用。
删除“NIC :xx:xx:xx”,也就是默认的网络接口。是的,点“删除”,因为我们要更换虚拟网卡的接口。
最下方的“添加硬件”,顾名思义。
我们接下来要添加虚拟硬件:硬盘、网卡。
添加硬件,选择“Storage”,前进。选中“文件”,浏览,选择你刚才创建的虚拟硬盘文件。然后是“目标”的“设备类型”,选择“Virtio Disk”,前进,完成。
添加硬件,选择“Network”,前进。“设备型号”选择“virtio”,“主机设备”选择你刚才创建的虚拟网络,前进,完成。
“Boot Option”里选“Hard Disk”,应用。
全部设定好之后,“虚拟机”,“运行”。
接下来就是在xp里装驱动了,它应该会有个向导,选择从光盘安装驱动就可以了。

测试了32、64位的XP和2003,方法相同。没有测试其他版本的windows,不知道驱动能不能用(估计不能……)

顺便说一句,如果要虚拟linux系统的话,内核在2.6.25以上的一般都自带virtio驱动了,所以只要在新建虚拟机的步骤2选linux然后是你要安装的发行版,选择了虚拟硬盘之后也不用去掉那个勾选框直接前进就可以安装系统了,接口默认就直接是virtio的了。
由此可见win的傲娇……

于是kvm发布了用于windows的vmwarevga虚拟显卡驱动,虽然我没感觉有什么变化,但是据说在可选分辨率上有改进,所以更新一下。
首先下载驱动:
32位:
http://www.linux-kvm.com/sites/default/ ... 32-kvm.iso
64位:
http://www.linux-kvm.com/sites/default/ ... -kvm-2.iso
附件是这两个的打包:
vmwarevga.7z
vmwarevga驱动。
(440.67 KiB) 已下载 1112 次
方法:
首先像以前那样运行虚拟windows,然后在依然是虚拟机的监视窗口,“查看”里选择“详情”,在IDE CDROM1那里连接对应版本的iso,这样虚拟系统的光驱里就会有驱动光盘,让它自动播放,一路确定就好。
然后关闭虚拟电脑,把“详情”的“视频”里的“型号”改成“vmvga”就可以了。
至于要虚拟linux的话,直接改成“vmvga”就好了。

使用声音:
virt-viewer默认使用VNC来显示虚拟机的,但这个vnc没有声音。当然可以通过远程桌面来解决这个问题,但我测试下来远程桌面的效果不好,于是就又折腾了一下。
首先把虚拟声卡换掉。
把“详情”的“Sound:es1370”删掉,添加“Sound”选“ac97”,然后把“显示:vnc”删掉,添加“Graphics”,选择“本地 SDL 窗口”,确定。
以后启动虚拟机会在一个新的窗口里显示,而声音也能正常使用了。
上次由 SleetOfSnow 在 2010-06-26 0:06,总共编辑 4 次。
zhouyuhai
帖子: 48
注册时间: 2010-05-13 12:19

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。

#2

帖子 zhouyuhai » 2010-05-31 11:11

:em38 :em38 ,这个真是个好帖子,顶
虚吧虚吧,看能虚出什么来,虚拟机百事通 http://www.vmbest.com
tlze
帖子: 61
注册时间: 2008-02-21 19:36

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。

#3

帖子 tlze » 2010-06-04 16:38

一直在用命令行,下次整这个试试。
huangyufeng
帖子: 107
注册时间: 2009-09-16 15:21
联系:

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。

#4

帖子 huangyufeng » 2010-06-08 13:23

准备安装了。。先看看。。
supernan
帖子: 690
注册时间: 2007-10-29 10:58

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。

#5

帖子 supernan » 2010-06-13 17:44

有没有win2000的virtio驱动?我照贴装的XP安装速度奇慢!为什么?
头像
SleetOfSnow
帖子: 11
注册时间: 2010-05-31 3:03

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。

#6

帖子 SleetOfSnow » 2010-06-13 19:39

supernan 写了:有没有win2000的virtio驱动?我照贴装的XP安装速度奇慢!为什么?
没有2000的系统盘所以没做过测试。
至于安装时的速度,如果你的CPU是多核,可以在安装的命令后面加上:

代码: 全选

-smp [希望使用的CPU核心数]
这样应该会快一些。
不过win的安装本来就慢的……
notnumb
帖子: 5
注册时间: 2009-06-13 10:01

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

#7

帖子 notnumb » 2010-07-03 13:45

好文,我顶一个 谢谢你的floppy.img,一直没找对路。我是在redhat上部署。
huangyufeng
帖子: 107
注册时间: 2009-09-16 15:21
联系:

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

#8

帖子 huangyufeng » 2010-07-04 8:51

上回安装kvm全是命令行。都怕了。整了半天。
这个帖不错 :em11 :em11 :em11
naruto
帖子: 26
注册时间: 2006-03-20 13:08

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

#9

帖子 naruto » 2010-08-18 21:02

GOOGLE半天,英文搜索结果前几页硬着头皮全部都看了个遍,还是有问题没办法解决
开始安装XP的时候老是无法复制viostor.sys、viostor.cat、viostor.inf等三个文件,也就是virtio磁盘的驱动,国内好像没人碰到过(也可能没有人问过),老外倒是有几个提过这个问题,但是没人回答,有解决掉这个问题的朋友么
naruto
帖子: 26
注册时间: 2006-03-20 13:08

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

#11

帖子 naruto » 2010-08-18 23:24

:em20 晕阿,你这笑的是有答案了还是怎么滴
cadolly
帖子: 104
注册时间: 2008-11-20 13:42

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

#12

帖子 cadolly » 2010-09-13 13:28

naruto 写了:GOOGLE半天,英文搜索结果前几页硬着头皮全部都看了个遍,还是有问题没办法解决
开始安装XP的时候老是无法复制viostor.sys、viostor.cat、viostor.inf等三个文件,也就是virtio磁盘的驱动,国内好像没人碰到过(也可能没有人问过),老外倒是有几个提过这个问题,但是没人回答,有解决掉这个问题的朋友么
换张安装光盘即可,最好使用原版VLK的。
plepman
帖子: 72
注册时间: 2008-12-17 23:09

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

#13

帖子 plepman » 2010-09-28 12:13

楼主辛苦


对已安装好的客户XP系统要使用virtio,那就这样吧:

再挂载一个 img,以ide方式启动客户XP系统img,以virtio方式启动第二个新的img,进入系统后安装好第二个磁盘的virtio驱动。重启,使用virtio方式就可以启动客户XP系统了。

要支持snapshot的话,要去下最新的驱动,老驱动好像会蓝屏。
cadolly
帖子: 104
注册时间: 2008-11-20 13:42

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

#14

帖子 cadolly » 2010-09-29 8:58

plepman 写了:楼主辛苦


对已安装好的客户XP系统要使用virtio,那就这样吧:

再挂载一个 img,以ide方式启动客户XP系统img,以virtio方式启动第二个新的img,进入系统后安装好第二个磁盘的virtio驱动。重启,使用virtio方式就可以启动客户XP系统了。

要支持snapshot的话,要去下最新的驱动,老驱动好像会蓝屏。
这个方法不错,我是进入系统后删除原有磁盘驱动,再手工添加virtio驱动,再以virtio方式启动进入的。
Enrique
帖子: 14
注册时间: 2010-07-09 22:12

Re: 主要基于GUI的kvm安装WindowsXP,并且在安装时加载virtio驱动。更新声音使用方法。

#15

帖子 Enrique » 2011-02-14 22:49

想请教个问题,为什么设置虚拟网络时最后一直是“Address already in use” :em06
回复