歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> 解決VMware下64位linux系統不支持全虛擬化的辦法

解決VMware下64位linux系統不支持全虛擬化的辦法

日期:2017/3/1 17:56:24   编辑:Linux技術

一、前提

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


可以看到系統是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


可以看到,已經支持全虛擬化(vmx)了。

從這點可以看出vmware下的vcpu並不充分兼容物理機cpu。謝謝閱讀,希望能幫到大家,請繼續關注腳本之家,我們會努力分享更多優秀的文章。

Copyright © Linux教程網 All Rights Reserved