2021-05-12 14:32:11
Linux入門學習教學:虛擬機器體驗之VirtualBox篇
前兩篇體驗了QEMU和經過KVM加速的QEMU,並體驗了第三方虛擬機器管理工具virt-manager,讓我們見識了開源社群的強大和開源虛擬機器軟體的高品質和高效能。這一篇,我來剖析一下VirtualBox。VirtualBox號稱是目前開源界最強大的虛擬機器產品,在Linux平台上,基本上都被大家選擇為首選的虛擬機器軟體。VirtualBox的強大不是蓋的,畢竟其後台是超有錢的Oracle公司。VirtualBox的任性也不是蓋的,它硬是沒有使用我前文所述的那些qemu、kvm、libvirt等被各個虛擬機器使用的開源元件,它的前端、後端以及核心加速模組都是自己開發的,唯有遠端桌面所需要的VNC大約使用了libvncserver。
相關文章:
我在標題中說到VirutalBox是使用的經典架構。所謂經典,主要體現在以下幾個方面:
1.虛擬機器及虛擬機器中的系統(Guest System)仍執行於主作業系統(Host System)之上,只是通過主作業系統的核心模組進行加速;
2.Unix系統中Front-End模式的經典架構,在VirtualBox中,VirtualBox的圖形介面只不過是命令列介面的虛擬機器軟體VBoxManage的圖形包裝而已,同時,它還提供VBoxSDL、VBoxHeadless等命令列工具。比如VBoxHeadless就可以執行一個不顯示虛擬機器桌面的虛擬機器,如果要顯示桌面,可以執行一個遠端桌面連線它。前後端分離有一個好處,就是對於桌面使用者,可以使用前端的圖形介面簡化操作,而對於企業級使用者,可以使用命令列工具構建自動化指令碼,甚至在系統啟動時自動執行虛擬機器。
我並不是一開始就喜歡上VirtualBox的,一點小小的插曲差點就讓我錯過了這麼好的虛擬機器軟體。本來我剛開始看到在各個Linux論壇都將VirtualBox放到首位,而不是在新聞中鋪天蓋地的KVM、Xen,我就覺得VirutalBox可能有點不夠專業,再加上第一次使用VirtualBox時,發現它不能完美轉發Ctrl+Alt+Fx(x=1~12),發現它的有些設定不能完全在圖形介面中設定,需要手動更改組態檔,然後我就放棄了。直到我掌握的正確的折騰Linux的方法論,看完了它長達369頁的使用者手冊,我才真正了解了它的強大,並深深愛上了它。
首先,在Ubuntu中安裝VirutalBox是非常容易的,只需要一個 sudo apt-get install virtualbox 即可。
安裝完VirtualBox後,可以考察一下它所遵守的我之前提到的“經典架構”,命令和執行結果如下圖:
lsmod 命令可以看到VirtualBox安裝後,在主作業系統中安裝了好幾個核心模組,用來對虛擬機器進行加速。至於使用核心模組對虛擬機器加速的圖片我這裡就不再貼了,請大家參考我的上一篇。通過 dpkg -L 命令可以考察VirtualBox提供了哪些命令列工具。最後,通過 dpkg -S 命令可以看到,VirtualBox這個可執行程式其實是屬於 virtualbox-qt 軟體包的,它只是一個圖形介面的封裝。
啟動VirtualBox,新建虛擬機器和安裝作業系統的過程我就不多說了,圖形介面很強大,一步一步執行準沒錯。安裝完WinXP後,執行效果如下圖:
從該圖中可以看出,WinXP系統認出的CPU是準確的Intel Core i7-4770K,雖然我只給它分配了兩個核心。但是顯示卡不能準確識別。之所以是這樣,是因為WinXP系統中沒有相應的驅動,所以,需要安裝VirtualBox的客戶系統增強工具。在選單欄選擇安裝增強功能,如下圖:
然後VirtualBox就會給WinXP安裝一個虛擬光碟,雙擊該光碟,就可以在WinXP系統中安裝客戶系統增強工具,如下圖:
客戶系統增強工具是安裝在Guest System中的,可以認為客戶系統增強工具主要是包含了客戶作業系統中所需要驅動,因為沒有這些驅動,客戶作業系統可能無法認識那些虛擬出來的硬體,比如虛擬顯示卡什麼的。當然,客戶系統增強工具的功能遠遠不止這些,比如顯示卡3D加速啊、主作業系統和客戶作業系統共用資料夾啊什麼的,還有一個最牛B的,那就是讓客戶作業系統進入無縫模式。比如安裝完使用者增強工具後,可以識別出顯示卡型別,並且有不同的解析度選項,如下圖:
按Host+L鍵,可以鍵入無縫模式,如下圖,可以看到在Ubuntu系統中,Ubuntu風格的視窗和WinXP風格的視窗共存:
更多詳情見請繼續閱讀下一頁的精彩內容: http://www.linuxidc.com/Linux/2015-03/114463p2.htm
相關文章