kvm虚拟机
最近迷上 ubuntu 了,花了一周的时间把工作移到 ubuntu 上面。但是还是不能放弃Winows,因此尝试虚拟机。我先后安装了 vmware 6.03, VirtualBox 1.5.6, kvm 0.91。最后得出结论:kvm最快!前题!!!你的CPU必须支持VM!!!

常用的虚拟机我都试过了吧,总的来说,kvm具有以下优点。
1,速度,这是我最看中的。kvmcpu效率和磁盘效率绝对是最优秀的。
2,稳定,这也是我看中的,目前的感受是最稳定的,不比 vmware 差。virtualbox我想大家都运到过qq问题。
3,扩展性,kvm是一个新的项目,以后回逐步在图形效率,3d和硬件上面得到linux最基础的支持。

当然也有缺点。
1,使用不太方便。很多人惧怕命令行的东西,但是稍微注意一下,会发现命令行是那么的清晰和简单。
2,目前有些功能不太完善,比如图形性能,usb等。本文的最后有说明。
3,你的cpu需要支持vt技术,否则不能体现 kvm 的优势。

可能很多人在初次安装 kvm 后,一使用就放弃了。觉得鼠标移动都很不平滑,这的确是kvm目前最大的问题!但是鼠标是图形性能,记住,kvm在运算性能和磁盘性能上面基本上是最优秀的。下面我来给大家介绍如何用已有的方法去缓解鼠标这个弱点。

首先介绍一下 qemu kvm 的关系。细节我就不多说了。
1kvm 不是 qemu 的插件。我在开始的时候一直以为kvm只是一个插件。记住,kvm基本是一个独立的系统,只不过借用了qemu的代码和操作界面。也就是说,你在命令行中如果使用 qemu 的地方,只需要题换成 kvm,其他的参数基本都不用修改就可以运行,这样的效率是 qemu 的很多倍。所以,如果你想用好 kvm,去看看 qemu 的说明吧。
2,如果要用kvm,你的cpu必须支持 vm 技术,否则和 qemu 的效率基本相同。

如何判断你的cpu是否支持 vm 技术?
首先使用
代码:
egrep '(vmx|svm)' /proc/cpuinfo

如果没有任何的输出,说明你的cpu不支持,不用往下看了
如果支持,你可以在输出中到 vmx 的字样。看看我的
代码:

danny@danny-laptop:~$ egrep '(vmx|svm)' /proc/cpuinfo
flags      : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida
flags      : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida
danny@danny-laptop:~$ egrep '(vmx|svm)' /proc/cpuinfo
flags      : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida
flags      : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe nx lm constant_tsc arch_perfmon pebs bts pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm ida


注意,大多BIOS缺省是关掉了vt支持的,你需要首先设置你的bios,我使用的是x61,缺省就是关闭的。

接下来安装 kvm 包,使用新得利吧,细节就不说了。不过还需要下载 qemu包。因为 kvm 没有包含建立虚拟磁盘的工具。kvm应该根据你的cpu类型自动激活内核模块,反正我的是这样的。接下来你需要在终端运行一下kvm,如果没有任何错误信息,那么恭喜你,你可以使用kvm了。

把你的用户加入到 kvm 组,使用系统管理当中的用户和组管理,这里略去细节。也可以使用命令行
代码:
adduser xxx kvm



如果你需要虚拟机访问物理磁盘,需要把你的用户添加到 disk 组。
代码:
adduser xxx disk


xxx是你的登录名。

建立磁盘映像文件,使用
代码:

qemu-img create -f qcow2 WindowsXP.img 10G



细节请看相关命令行说明。

你应该准备了 windows xp 的安装 iso 映像包吧。
然后使用下面命令打开虚拟机进行安装了。
代码虚拟机上网:

kvm -M pc -m 512 -soundhw es1370 -hda /home/danny/kvm/WindowsXP.img -localtime -net nic,vlan=0 -net user,vlan=0 -cdrom /media/tools/winxp.iso  -boot d

-m 512 是虚拟机的 ram 大小
-hda /home/danny/kvm/WindowsXP.img 是你刚刚建立的虚拟磁盘 C
-cdrom /media/tools/winxp.iso 是安装光盘的位置 D
-
boot d 是从光驱启动
这里注意一下,官方推荐使用 -no-acpi 参数,原因是 qemu/kvm不太支持,可能造成 cpu 的占用偏高。我没有用这个参数,一用就退出,但是CPU使用很正常。你们可以尝试先加上这个参数。
其他参数自己看看文档吧。

速度怎么样?是不是你见过最快的虚拟机?这里注意一下,切换方式和 vmware 一样,都使用 ctrl+alt 切换。如果出现显示冲突,你多半需要关闭你的桌面特效。linux总是给我们不经意的惊喜。

安装完了吧,怎么样?鼠标很慢?启动时间很快吧。试试其他的一些消耗CPU而不需要什么图形性能的程序你就知道kvm的效率了。

下面看看我的桌面效果,鼠标的问题也解决了。

剩下的问题题明天再解决,今天有事,先离开了。

回帖请注意:
1。把你自己的问题描述清楚
2。请不要废话

继续。。。。。。。。。。。
看样子已经有人安装成功了,下一步经过简单的操作,我们实现来消除鼠标的问题。
首先确定你的虚拟机没有运行,然后运行以下的代码
代码:

kvm -M pc -m 512 -hda /home/danny/kvm/WindowsXP.img -hdb /dev/sda5 -hdc /dev/sda7 -hdd /dev/sda8 -net nic -net user -usb -localtime -vnc 127.0.0.1:0 -daemonize -redir tcp:3389::3389


解释一下,
1-hda /home/danny/kvm/WindowsXP.img 你的系统虚拟磁盘
2-hdb /dev/sda5 -hdc /dev/sda7 -hdd /dev/sda8 这个根据你自己进行选择,kvm可以加载你系统的分区。注意,分区是独享的,也就是说如果在 kvm 中加载了分区,这几个分区在宿主机(unbutu)中将无法访问。我这几个分区是Windows 下的分区,在 Ubuntu下也没有什么用。
3-net nic -net user 使用简单网络访问,可以使得虚拟机上网,或者是访问宿主机。但是宿主机不能访问虚拟机(很奇怪的问题)。
4-usb 使能 USB 支持,我没有成功。不知道为什么。
5-localtime 时间同步,你不希望你的虚拟机是另外的时间吧。
6-daemonize 后台运行,不显示图形界面,这个我后面要解释。
7-vnc 127.0.0.1:0 打开远程桌面支持,这个可不是Windows的远程桌面哦。
8-redir tcp:3389::3389 把虚拟机的远程桌面服务器端口映射到宿主机的端口,这个才是等同windows的远程桌面。


运行了吧,怎么突然退出而没有任何反应?因为虚拟机已经在后台运行了。你有两种方式查看虚拟机的界面。
1,使用远程桌面工具,地址 localhost , 端口 5900
2,使用远程终端,地址 localhost 端口 3389
如果你的虚拟机还没有配置远程桌面,请现用第一种方式访问虚拟机界面,然后设定虚拟机(我的是XP)远程桌面方式,然后就可以了。

下一步是整合虚拟机到你的桌面,就和我的贴图一样,使用以下命令
代码:

rdesktop localhost:3389 -u danny -p xxxxxx -g 1024x720 -D -r sound:local


-
u 后面的是用户名,-p 后面的是密码。-r sound:local 是启用声音,-D 是消除远程终端窗口的边框。怎么样,桌面出来了吧?应该还有登录的声音哦。这里也应该知道 1024x720 的道理了吧。这个值根据你自己的屏幕大小来调整。

这种方式下,可以享受 kvm 的所有效率,同时,鼠标是不是很快了。另外,几乎可以避免所有的键盘冲突。但是如果在虚拟机中看电影的話可能比较痛苦。

以下是遗留的问题,希望有朋友可以解决。
1,在宿主和客户间方便共享文件夹。我的方案是让宿主访问客户的共享文件夹,因为ubuntu是可以通过网络访问windows的共享文件夹的。但是主要的问题是,目前我们使用的是nat的方式,kvm的这种方式最简单,但是宿主不能直接访问客户。目前我还没有到比较简单的方法。大家可以参考一下文档kvm.qumranet/
2,偶尔看看电影什么的,需要使用PPStream。切换到真实的 windows 太麻烦。希望通过 ppstream 的网络共享,在宿主上播放。
3kvm在运行的时候,系统挂起后,不能正常唤醒。这个是kvmkernel的问题,请参考htt
ps://bugs.launchpad/ubuntu/+source/linux-source-2.6.22/+bug/113038 这个问题对我很重要,我有笔记本不关机的习惯。
4USB设备在虚拟机中的挂接问题。

好了,希望大家使用 kvm 愉快,并且多多交流一下经验。如果哪位朋友可以帮我解决第三个问题就感谢了。
Screenshot-3.png
 描述:
 文件大小:
 153.29 KB
 看过的:
 文件被下载或查看 3429

强悍的KVM!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。