VirtualBox或VM Ware只能安裝32位系統的解決辦法

前言

今天幫同學用VirtualBox安裝虛擬機,出現了一個問題,在新建虛擬機,選擇系統類別的時候,只能選擇32位的系統。經過多番查閱資料,找到了解決之道,寫這篇博文也是爲了給後來者一些參考。This kernel requires an X86-64 CPU,but only detected an i686 CPU.
使用平臺:Windows

分析

首先聲明一下,32位|64位的系統都可以安裝64位的虛擬機。
VirtualBox安裝64位的系統需要滿足以下條件:
1. 64位的cpu
2. cpu允許硬件虛擬化

先來看第一個條件,64位的CPU,這個嘛,現在的筆記本一般都是64位的了,所以不用擔心,除非是好幾年之間的電腦。如果你不清楚,可以打開命令行,輸入systeminfo,在輸出的信息中找到CPU這一行,如果是X86_64的,就是64位CPU;或者,也可以下載個CPU-Z軟件查看(PS:這個軟件很好用)。第一條分析完畢。

然後是第二條,是否開啓CPU硬件虛擬化1,這個嘛,各大廠商的情況不大相同,有的電腦默認開啓了(比如,我的HP),有的沒有,所以需要自行開啓,開啓方法:開機時按某個鍵進入BIOS設置界面2
然後,setup==>security==>cpu virtualization,將cpu virtualization這一項由Disable設置爲Enable。保存,然後重啓電腦,硬件虛擬化就開啓成功了。

然後,按理說,經過這兩步處理,VirtualBox中應該會出現64bit的選項了,然而,還是隻有32位的選項,看來問題還真不是出在這裏。

後面,又去查資料,終於發現了問題之所在,原來是因爲Windows8.1自帶的Hyper-V!我這個同學使用的是Win8.1系統,系統自帶Hyper-V,這是微軟自家的虛擬機軟件。這麼來說吧,VirtualBox和workstation與Hyper-v是可以共存的,但是,不是完美共存,Hyper-v是獨佔硬件虛擬化的,Windows 8.1下安裝了Hyper-v後VirtualBox和VMware workstation是不能安裝64位的操作系統的。這個問只會在Windows8.1/8上出現,Win7是不會出現這個問題的,因爲Win7不自帶Hyper-V!→_→
那麼,我們就只要禁用Hyper-V就行了。禁用的步驟:
1. Ctrl+Shift+Esc,打開任務管理器:
這裏寫圖片描述

  1. 找到Hyper-V開頭的8個服務,將Hyper-V虛擬機管理設置爲手動開啓,同時關閉該服務:
    這裏寫圖片描述
    這裏寫圖片描述
    這裏寫圖片描述

  2. 關閉Hyper-V之後,大功告成!

在將Hyper-V禁用之後,再次打開VirtualBox新建虛擬機,果然找到了64位的選項!大功告成!::>_<::

補充說明

1. 什麼是硬件虛擬化?
硬件虛擬化其實就是CPU的虛擬化技術。intel的叫VT-x,amd的叫AMD-V。支持虛擬技術的CPU帶有特別優化過的指令集來控制虛擬過程,通過這些指令集,VMM(Virtual Machine Monitor,虛擬機監視器)會很容易提高性能,相比軟件的虛擬實現方式會很大程度上提高性能。虛 擬化技術可提供基於芯片的功能,藉助兼容VMM軟件能夠改進純軟件解決方案。由於虛擬化硬件可提供全新的架構,支持操作系統直接在上面運行,從而無需進行 二進制轉換,減少了相關的性能開銷,極大簡化了VMM設計,進而使VMM能夠按通用標準進行編寫,性能更加強大。

2. 如何判斷是否支持硬件虛擬化呢?
Windows:
利用一個小工具 securable.exe 來幫助我們測試硬件對虛擬化技術的支持程度。我們程序運行結果中可以看到物理機支持 64 位運算,支持硬件 DEP,支持虛擬化技術。這樣的結果表明我們可以放心測試 XP MODE,如果“ Hardware Virtualization ”顯示的結果是“ Locked OFF ”,則表明 CPU 支持虛擬化技術,但主板的 BIOS 卻禁止了對虛擬化的支持,這種情況我們就需要更改 BIOS 設定或升級 BIOS。如果三項檢測結果中有一項顯示了“NO”,那就表明您的硬件不能滿足 XP MODE 的部署條件,就不用繼續測試了。
Linux:
在Linux下,使用命令:grep -E ‘(vmx|svm)’ /proc/cpuinfo。如果有vmx或svm內容輸出,則說明CPU支持虛擬化技術。

3. 安裝還是出錯,爲什麼呢?
新建虛擬電腦時,要安裝64位的Ubuntu可是沒有對應選擇64位,更改設置即可。這裏還要注意一點:要打開VirtualBox的vt-x/amd-v設置,這個其實會自動打開。重新安裝,大功告成了!
還有一點,在上面所有操作都昨做完之後,最好重啓一次,以免再次出錯!

4. 如果還有其他問題,請看左邊,關注微信號,互相學習交流。


  1. 重啓進BIOS,找到virtualization的一項,我的BIOS中在Advanced-cpu setup-virtualization,現爲Disabled狀態,改爲Enable,重啓進入系統。重新檢測,發現已經支持硬件虛擬化。
  2. 關於如何進入BIOS,不同型號的電腦方式不盡相同,但一般都是在按開機鍵之後,狂按某個鍵(我的hp pavilion notebook好像是F5),然後就進入了BIOS,具體的請自行Google自己對應型號的進入BIOS方法。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章