解决VMware下64位linux系统不支持全虚拟化的办法
程序员文章站
2023-11-15 08:10:22
这篇文章主要为大家介绍了物理机下,VMware Workstation安装64位CentOS系统不支持全虚拟化的办法,需要的朋友可以参考下... 14-10-14...
一、前提:
cpu支持inter vt-x或amd虚拟化技术,具体参考官网说明。
二、问题描述:
物理机下,vmware workstation能安装64位centos系统,处理器inter i3 m390,且支持inter vt-x虚拟化技术,物理机bios中已打开inter虚拟化开关(自己找),既然能安装64位系统,说明物理机bios中支持虚拟化开关已打开。
半虚拟化为pae
全虚拟化为vmx(inter)、svm(amd)
复制代码
代码如下:# uname -r
2.6.32-358.el6.x86_64
# cat /proc/cpuinfo |grep flags
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36
clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc up arch_perfmon
pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni ssse3 cx16
sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dts
2.6.32-358.el6.x86_64
# cat /proc/cpuinfo |grep flags
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36
clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc up arch_perfmon
pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock pni ssse3 cx16
sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dts
可以看到系统是64位centos,只支持半虚拟化为pae,没有全虚拟化vmx
三、解决办法
在workstation上实现嵌套虚拟化,需要编辑虚拟机的vmx文件,添加
vhv.enable = "true"
找到虚拟机安装文件,带有.vmx后缀,添加即可。
参考kb如下(additional information部分)
复制代码
代码如下:http://kb.vmware.com/kb/2034803
# cat /proc/cpuinfo |grep flags
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc
up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock
pni vmx ssse3 cx16 sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dts tpr_shadow vnmi ept vpid
# cat /proc/cpuinfo |grep flags
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc
up arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf unfair_spinlock
pni vmx ssse3 cx16 sse4_1 sse4_2 x2apic popcnt hypervisor lahf_lm arat dts tpr_shadow vnmi ept vpid
可以看到,已经支持全虚拟化(vmx)了。
从这点可以看出vmware下的vcpu并不充分兼容物理机cpu。谢谢阅读,希望能帮到大家,请继续关注,我们会努力分享更多优秀的文章。