2022年6月18日 星期六

(Vbox) VirtualBox 安裝、設定、管理與問題

光是 Virtural Box. 能夠有這長串的文章. 也真是佩服!!... 但人家寫得辛苦. 而且言之有物, 雖然我個人使用 Vbox經驗還沒碰到過那麼多的需求和問題, 但這畢竟 是篇不錯. 可留存. 日後可備用的好經驗文章...!! 收錄!~
 
======================================

VirtualBox 安裝、設定、管理與問題(windows)

towns (towns)

   因VMware server 2.0用的不順,towns開始測試其他的虛擬軟體,如VirtualBox、Virtual PC 等等,也許在這些測試中,towns可以找到適合towns使用的虛擬軟體

VirtualBox 安裝、設定
    towns使用的是3.1.8版本,為全中文化版本,安裝非常容易,towns不在此說明,只提供相關教學連結,towns 將他安裝在windows 2008 server 64bit,也是非常順利,並無出現不支援等問題
安裝教學:http://briian.com/?p=5690 重灌狂人
官方下載點:http://www.virtualbox.org/wiki/Downloads 
另一個有用的連結:http://cha.homeip.net/blog/2008/10/404.html


VirtualBox 管理
1. VirtualBox 似乎沒有提供與本機互動狀態設定,如開機自動啟動、關機執行正常關機程序,需使用指令VBoxHeadless 啟動簡單介面,這樣啟動後,就沒有console介面
VBoxHeadless -s CentOS53 <==啟動CentOS53
VBoxHeadless -s win2k3 <==啟動win2k3
VBoxManage startvm CentOS53 <==啟動CentOS53,並開啟console
VBoxManage controlvm CentOS53 acpipowerbutton <==傳送關機指令,正常關閉CentOS53
VBoxManage controlvm CentOS53 savestate <==暫停並儲存狀態,有點類似休眠功能

2. 管理虛擬硬碟 *.vdi


VBoxManage showvdiinfo D:VBXCentOS53.vdi <==顯示CentOS53.vdi 訊息
VBoxManage internalcommands sethduuid D:VBXCentOS53.vdi <==修改CentOS53.vdi UUID編號,系統會自動建立新的UUID
VBoxManage modifyhd D:VBXCentOS53.vdi <==壓實CentOS53.vdi 虛擬硬碟,並釋出空間
VBoxManage clonevdi CentOS53.vdi CentOS53-cacti.vdi <==複製vdi檔並變更UUID,這麼做就可以直接轉移 vdi,不會出現UUID相同的問題,請使用完整路徑指定vdi
VBoxManage modifyhd D:VBXCentOS53.vdi --compact <==壓縮CentOS53.vdi檔案

隨開機啟動說明:


http://ns2.ublink.org/phpbb/viewtopic.php?p=3485
http://www.ichiayi.com/wiki/tech/vm_handless
http://pulipuli.blogspot.com/2008/04/windowsvirtualbox.html
VBoxManage指令說明:
http://zhang-ly520.javaeye.com/blog/300606
http://myxberry.blogspot.com/2009/03/virtualbox-vdi.html
UUID變更說明:
http://samwang823.blogspot.com/2009/12/uuid.html
 縮放虛擬硬碟空間:
http://pulipuli.blogspot.com/2009/10/virtualboxcentoslvm.html

3. 無法進入常駐狀態,在VMware server中,可以單純關閉Console,系統仍啟動中,VirtualBox 看來不行
可以利用VBoxManage controlvm CentOS53 savestate 的方式,進入管理介面,開啟Console,感謝小舖SteveT
相關討論:http://www.blueshop.com.tw/board/FUM200902021801247LF/BRD20100525152600WC9.html

4. 轉移虛擬系統,VMware可以將相關的資訊放到同一個資料匣,以方便轉移,但VirtualBox 會將資訊分散於其他路徑,虛擬主機相關資訊預設路徑 C:Users[user].VirtualBoxMachines,虛擬主機硬碟檔預設路徑 C:Users[user].VirtualBoxHardDisks,在做轉移到時是造成了一些困擾,轉移上,VMware 顯的方便許多。以下是兩種做虛擬系統轉移方式
    4.1. 需使用匯入匯出應用裝置的方式,來完成虛擬系統轉移,但檔虛擬硬碟檔案很大時,那就比較麻煩了,但這是一個最完整的方式
    4.2. 使用虛擬媒體管理員加入虛擬硬碟。這方式需重新使用精靈新增(重建xml檔),並記錄詳細資料,以方便重建時硬體的規劃
補充:使用VirtualBox可以將設定檔及虛擬硬碟放在一起,1.變更喜好設定路徑為指定路徑、2.新增虛擬主機時,名稱設定為指定路徑下的某資料匣,這樣產生的設定檔與虛擬硬碟,就會在同一個資料匣中

5. 共享資料匣使用
目前 towns 得到的資料都是利用網路磁碟方式來做,但如果在沒有網路系統的情形下,是否能使用呢?還沒找到方法 ^^"

共享資料匣使用教學:
windows系統:http://briian.com/?p=6415 (已測試可用)
簡單的方式可以 在資料匣的工具中,連線網路磁碟機
Linux系統:http://briian.com/?p=6241&page=2(已測試可用)

6. 系統還原
towns試著使用windows 2003 的 ghost 檔,還原到虛擬機中,遇到一些問題,如
 6.1. 如何讓 VBX 讀取 ghost 檔?

7. 直接使用其他VM檔
towns 嘗試著直接將 VMware 產生的 vmdk 檔案,直給提供給 Virtual Box 處理,至目前為止,並無法成功開啟系統

8. 轉移虛擬系統補充
使用匯出方式,會出現三個檔案 *.mf、*.ovf 及 *.vmdk

9. 轉移虛擬系統補充
當有使用快照功能時,系統中會出現一個 Snapshots 資料匣,在資料匣中會出現一個以UUID做為名稱的 vdi 檔(如{44e2c845-4d3c-4a53-b633-027e67fb7240}.vdi)他是執行了差異備份的磁碟檔,在轉入新系統後可以手動的將該檔案加入,他會自動成為父磁碟下的一個子磁碟檔,不過是否能讓轉移後的系統可以正常使用原有的快照,目前 towns 已經測試完成。需要修改 "虛擬系統設定檔(*.xml)"。這是個相當麻煩的方式

10. 開啟遠端 console 功能,可協助使用 VBoxHeadless 無 Console 介面的問題
到設定值==>顯示==>遠端顯示,勾選啟用伺服器,並指定伺服器埠,在啟動虛擬主機時,就可以透過微軟的遠端桌面(mstsc)連入
註:當有多台要管理時,每一台虛擬機的連接埠要不同,才能連入管理 


 VirtualBox 問題
1. 光碟機如果在執行中突然中斷,會發生抓不到光碟機的問題,這時需重新掛載光碟機(towns使用daemon tools lite 掛載ISO檔)

2. 使用複製 / 貼上方式產生vdi的檔名,VirtualBox 會停止回應一段時間,看起來像當掉 = =

3. 版本更新問題。towns更新到最新版的 3.2.2 版,發生了網路卡抓不到的問題,即使安裝了 Guest Addtion,網路卡仍抓不到,後來變更為AMD-PCnet PCIⅡ才正常抓到,安裝系統為 WinXP SP2

4. 做SP3更新,系統就當了 = =,強制重開到是正常

5. 轉移Linux 虛擬系統後,無法正常機,出現 kernel panic - not syncing: Attempted to kill init! 這樣的錯誤訊息,主要發生的原因為 3.1.8 轉放到 3.2.4,而3.2.4 版預設使用SATA 介面,將存放裝置改為 IDE 即可


關於設定檔
VirtualBox 在安裝後,會出現幾重要的設定檔(*.xml)
1. VBX 系統設定檔:預設路徑 C:Users[user].VirtualBox 之下(win 7、vista)
                                         C:Documents and Settings[user].VirtualBox (xp、2k3)
    包含VirtualBox.xml(主設定檔)、VirtualBox.xml-prev(主設定備份檔)
2. 虛擬系統設定檔:預設路徑C:Users[user].VirtualBoxHardDisks
                                       C:Documents and Settings[user].VirtualBoxHardDisks
    包含*.xml(主設定檔)、*.xml-prev(主設定備份檔),檔名為新增虛擬機的名稱
註:不知道那個版本開始,主設定檔改為 *.vbox


問題與實例
towns 在做系統轉移時遇到的問題
    towns 使用虛擬機有一個習慣會使用快照方式,將剛裝完的系統照一份下來,以便將來做下一個測試系統時,可以直接還原,當然,在系統架設、設定完成後,需要將虛擬硬碟放到正式主機上使用,而這時問題出現了,towns 單純的將虛擬硬碟(CentOS53.vdi)壓縮並複製到正式機中,當towns 使用管理介面附加該硬碟、設定相關資料後,啟動虛擬系統,發生了奇怪的現象,這個系統是當時 towns 的快照,裡面完全沒有towns 架設的cacti 資料。在這個過程中,towns 大約知道了 VBX 他的快照模式。

問題一


    CentOS53.vdi(這是一開始安裝的產生的) ==> 按下快照後會出現一個快照硬碟( .Snapshots{********-****-****-****-************}.vdi)這個差異硬碟的檔案,而之後所做的變動,者會放在這個差異硬碟中,一但執行還原動作,系統會刪除這個差異硬碟的資料,使用CentOS53.vdi這個原始的硬碟,所以,當 towns只將CentOS53這個硬碟備份到正式主機時,就會發生,只出現原始資料,而 towns 所安裝的 cacti 則完全消失 = =

    這就是個大問題了,難到說 towns 只能使用匯出的方式來轉移虛擬系統嗎?= =

問題二
    當 towns 將CentOS53.vdi 放到正式機後,他無法直接啟動,因為在正式機上,還有一個使用相同的虛擬硬碟所產生的虛擬系統,他們有相同的UUID,towns 使用"管理虛擬硬碟",中說明的指令來變更UUID,就會發生一件事,這個快照硬碟,是無法附加的,因為他會依照第一次產生CentOS53.vdi中的UUID來做連結判斷,如果加入媒體中,他會自動與第一個系統連結,天吶,還真是麻煩 = =

找到方法處理了。使用VBoxManage clonevdi  針對快照硬碟做備份動作,他會將快照碟與基礎碟合併為一個檔案,同時變更UUID,這時就可以直接放到正式機中使用了


1. 關於 VMware 與 VBX 轉移問題
    經過一些測試後,確定VMware 所產生的 vmdk可以直接轉移給 VBX 使用,VMware 與 VBX 產生快照的方式是相同的,基礎碟檔案 ==> 快照碟檔案1 ==> 快照碟檔案2,在進行轉移時要確認使用的是基礎碟檔案,不過,通常基礎碟檔案 towns 都是放一個空空的系統,這樣移過去可能沒什麼用,towns需要連快照檔一起能讀取,這時就需要將快照碟檔案與基礎碟檔案合併成一個檔案,在轉移後,就能得到 towns設定好的虛擬機。
相關討論:http://www.blueshop.com.tw/board/FUM200902021801247LF/BRD20100525152600WC9.html

VMware 檔案合併方式
請參考VMware Workstation 使用與管理

VBX 檔案合併方式
請參考問題與實列 


2. 關於NAT連接方式
    towns使用虛擬機,多半是使用bridge(橋接介面卡),不過如果在只有一個IP可用的情形下,就必須使用NAT連接方式,那就有個問題,如何管理架設好的伺服器?是否能遠端登入管理?伺服器是否能連到外面?伺服器是否能正確提供服務(如http服務)?towns在下面會測試NAT連接與管理。

測試一:連外網路測試
    架設好的主機是否能ping 到外面的主機(如yahoo)。架設好主機後,設定為DHCP自動抓取,虛擬系統中的主機會自動抓到網路相關資訊 IP:10.0.2.15、NM:255.255.255.0、GW:10.0.2.2,奇妙的是如果開啟第二台使用NAT的主機,他也是抓到這個IP,可正常Ping 到外面的主機,如果手動設定為自動抓取的網路資訊,也可以正常Ping 到外面的主機,這個部分OK

測試二:連入管理
    在VBX,似乎已經提供了方法來做虛擬系統的管理
相關資料:
http://slo.twbbs.org/?p=417 Tony Blog
http://dev.sopili.net/2009/05/connect-ssh-http-into-virtualbox.html Sopili
http://virtualboximages.com/node/158  國外前輩
    在google中找到的資料與上面連結多半相同,但經過測試,似乎是不行的,在資料中都是使用
VBoxManage.exe setextradata方式,在指定虛擬主機xml檔中,寫入轉post 資訊,在查看資料時,都可以知道,使用的VBX皆為舊版,目前 towns 測試,都是不通的 = =,不過這麼多前輩這麼寫,一定是可行的,只是towns 還測不出來。
    towns的系統為win7 64bit VBX為3.2.8版
    在前輩們的敘述中,可以看到寫入這三行,也有看出裝置為pcnet,不過,towns 使用的是Intel PRO/1000 MT Desktop的網路卡,這一段應該是不同的,更糟的是,towns 還找不到裝置名稱呢
    VBoxManage.exe setextradata CentOS53-cacti "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/Protocol" TCP
    VBoxManage.exe setextradata CentOS53-cacti "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/GuestPort" 22
    VBoxManage.exe" setextradata CentOS53-cacti "VBoxInternal/Devices/pcnet/0/LUN#0/Config/ssh/HostPort" 2222

    towns 在官方文件中找到了一個方法,與前輩們說的並不同
在說明文件Virtrual networking ==>network access translation(NAT) ==> configuring port forwarding with NAT中有提到關於轉port 的方式,使用指令為VBoxManage modifyvm

語法:
新增轉port
VBoxManage modifyvm "VM name" --natpf<1-N> [<name>],tcp|udp,[<hostip>],<hostport>,[<guestip>], <guestport>
--nat port forwarding<編號> [自定名稱],協定,[<本機IP>],<本機port>,[<虛擬機IP>],
虛擬機port>

刪除設定
VBoxManage modifyvm "VM name" --natpf<1-N> delete [<name>]

例1:轉ssh port
VBoxManage modifyvm "CentOS53-cacti" --natpf1 "guestssh,tcp,,2222,,22"
目前經過 towns 測試,設定後仍無法連入管理 = =
查了一下連線情形,他是有連入,可是回來時卻收不到封包 = =

測試通過了,原來是 towns 將IP設為固定(10.0.2.15)導至系統無法正常轉送封包,只要將網路卡設為DHCP,這樣就可以正常使用上轉port 方式連到 NAT 下的系統了

例2:轉http port
VBoxManage modifyvm "CentOS53-cacti" --natpf1 "guesthttp,tcp,,8000,,80"
將CentOS53-cacti 的80阜轉為8000
VBoxManage modifyvm "CentOS53-cacti" --natpf1 delete "guesthttp"
刪除gueshttp的設定

註:這個功能已經在UI下面可以看到了,當我們網路介面設定為NAT時,下方的"連接埠轉送"功能會亮起來,這時,就可以設定 port 轉換功能了


3. 問題:網路不通
         towns使用NAT方式幫客戶架設了一台cacti,做為常態統計、監控的設備,很奇怪的是,他會自動停止?在管理頁面看狀態是正常啟動的(如圖vbxerr.jpg),但使用puitty及連入cacti 登入頁,都不行,不過有時使用 savestate 方式進入console後,可正常運作?有時會完全當掉!並不確定這是什麼問題,先看看vbx 的 log檔確定問題在那裡!
        今天他又停了,不過查到了一個問題,DHCP異常,導致無法取得IP。IP無法取得,與VirtualBox Host-Only Network 這張虛擬網卡的啟動與停用無關,只要重新啟動系統,就會恢復正常,並無法確定問題點!是否題VBX的問題呢?VBX版本為 3.2.10 r66523


4. 資料匣共享方式
在VBX中有一個設定共享資料匣的地方,這裡可讓用者不需透過網路芳鄰該虛擬機及主機共享資料匣

資料匣共享設定
0. 必需有安裝 VboxAdditions(安裝注意事項請看第33點)
1. 設定共用Host 端
點下方 資料匣 圖片,按滑鼠右鍵 ==> 共用資料匣設定 ==> 點右上方的 +資料匣 ==> 資料夾路徑 自選,資料匣名稱如無設定,預設使用 host 資料夾名稱,下面的三選項則自行選擇
2. 設定 Windows
 2.1. 設定共用Guest 端 手動掛載方式1
到CMD模式 ==> 打入 net use [磁碟機代號]: vboxsvr[分享路徑]
 2.2. 設定共用Guest 端 手動掛載方式2
在guest 系統啟動的狀態下,設了共享資料匣,也設定了自動掛載,不過還沒連上,這時可以手動掛載
在windows 建立網路磁碟機,磁碟機代號自取,路徑打 vboxsvr[分享路徑],就會出現了
3. 設定 Linux
 3.1. 設定共用Guest 端
建立資料匣(用於mount)==> 到 terminal 中打入 mount -t vboxsf [分享資料夾名] [掛載路徑]

補充1:在VBX 4.1.8版後,只需要在設定中,有勾選自動掛載,guest系統(windows)中就會出現一個網路磁碟
補充2:在Linux 下,自動掛載看來是無效的

參考資料:
windows系統:http://briian.com/?p=6415
Linux系統:http://briian.com/?p=6241&page=2


5. 使用兩張網卡
towns在某些特定情狀時,需要虛擬機有兩張網卡,VBX在網路卡的部分最多可裝4張,可惜,towns 在第一次啟用時,就發生了,抓不到網卡的情形,在VMware下新增後,系統啟動時就會自動找到,VBX似乎是不行的,這是 towns 的問題,加裝兩張網卡是可以的,不過會有發生抓取錯誤的問題,導致網卡無法正常使用,這時請手動設定ifcfg-eth0及ifcfg-eth1這兩個檔案的資料


6. 關於 VMware 與 VBX 轉移問題實作 -- 異機轉移
在前面 towns 曾經做過VMware 快照檔合併,並轉移到 VBX使用,是能正常啟用的,但這次將線上虛擬主機備份回來測試,卻無法正常使用

經過一連串的測試,發覺主要的問題為驅動程式造成無法正常啟動,towns 轉移linux系統,在啟動系統時,系統會提示很多舊驅動程式要移除,新的驅動程式要加入,網路卡要重設等等,之後就可正常登入。而 windows 則會發生無法啟動的問題,towns 試著使用"免重新安裝系統轉移工具"將windows 修正,在啟動系統時仍有問題


7. 啟動錯誤 the vm session was closed before any attempt to power it on
這個問題似乎是發生在VBX更新到3.2.12 版時出現的
處理方式:移除該VM中設定的光碟及硬碟,再重新加入即可
資料來源:
http://www.sysprobs.com/vm-session-closed-attempt-power-virtualbox-32-error
http://hi.baidu.com/v71000/blog/item/94da1356b0c117d5b645aebd.html


8. 更新到4.0.2版的問題
1. 當towns將VBX更新到4.0.2版後,發生了遠端桌面無法連線的問題,不知道是因為設定問題還是版本問題,這個部分towns 需要再測試一下
這個問題在安裝Oracle VM VirtualBox Extension Pack 後,也獲得解決
註1:安裝完成後,需重新啟動伺服器
註2:不要使用3390 port,這個port 似乎被什麼佔用了,但看不出來哦!

2. 當towns將VBX更新到4.0.2版後,發生了管理第三點方式開console,會導致系統死亡,必需重開
這個問題在安裝Oracle VM VirtualBox Extension Pack 後,也獲得解決

3. USB 2.0錯誤(如圖VBX402USB20
該錯誤需下載安裝 Oracle VM VirtualBox Extension Pack ,或關閉USB 2.0支援就可解決
官網下載點:http://www.oracle.com/technetwork/server-storage/virtualbox/downloads/index.html#extpack

註:升級到4.04版,該套件仍需安裝


9. 關於CPU Loading過高的問題
towns 使用三台主機做測試,系統皆為 Win 7 64bit ulit
測試條件狀態:皆只做基本安裝,並處於靜止狀態(無手動執行應用程式)很明顯的,CentOS使用的CPU資源很大,不過這兩個系統有一個差別,windows XP有安裝VBX的Guest Addtions,但在安裝後,CPU Loading仍維持相同 = =

第一台:

第二台:

第三台:

規格

Intel Core 2 6300

RAM4GB

AMD Athlon 64 X2 4800+

RAM4GB

Intel i7 860

RAM8GB

Win XP CPU Loading

0~10之間,平均為5,偶爾會爆量到20

0~5之間,平均為2

0~1之間,平均為0

CentOS53 CPU Loading

25~40之間,平均為30

16~55之間,平均為35

0~13之間,平均為2

CentOS53 安裝Guest AddtionsCPU Loading

25~40之間,平均為30

16~55之間,平均為35

0~13之間,平均為2

同時開啟

win XP

CentOS53

0~3之間,平均為1

0~3之間,平均為1

註1:在文字介面下安裝Guest Addtions,在掛載CDROM後,執行VBoxLinuxAdditions.run即可,不過towns的Linux系統都不安裝UI介面,會出現一個啟動失敗的錯誤
註2:VMware Workstation 7.1.3 開啟CentOS、win XP,在靜止狀態下,CPU Loading 為 0 = =
註3:towns使用的版本為4.0.4版,聽酷!學園學長 harrier 說,這個問題在4.x.x版後,已有改進,不過似乎僅對有UI介面的系統做處理,如果是只有指令介面(如Linux 純文字介面、DOS)CPU Loading 還是很大

奇妙的測試結果,當towns 再開一台xp的虛擬機後,CentOS的CPU Loading就降到約3以下,平均為2,這個是說明了,,VBX對windows系列對系統做最佳化處理嗎?而且會影響整個VBX的CPU使用率?


10. 開機自動啟動
對於虛擬機 towns 需要他能隨伺服器啟重而啟動,towns 希望能做到
1. 重開後自動啟動
2. 依序啟動(希望能依序啟動,而非一次全開,一次全開可能會造成虛擬機無法正常開啟)
3. 背景執行(不跳出任何畫面)

測試1:背景執行
 1. 批次檔 @echo off + VBoxHeadless -s CentOS53 ,這樣的方式不行,會出現如圖headless.jpg,就停在這裡
 2. 批次檔 VBoxHeadless -s CentOS53 &,這樣的方式,仍會出現上圖 
測試到目前,towns有點失望,似乎沒辦法達到 towns 的期望
 3. 使用輔助程式 hstart,可以達到背景執行的要求
hstart 程式網址:http://www.ntwind.com/software/utilities/hstart.html

測試2:依序啟動
 1. 使用批次檔寫入多行指令。只能啟動第一個,主要因為啟動後,console並不會結束,就不會執行第二行指令
   "C:Program FilesOracleVirtualBox"VBoxHeadless -s CentOS53 
   "C:Program FilesOracleVirtualBox"VBoxHeadless -s winxppurl
 2. 加上 start /wait 方式。其實在 1. 的測試就可以知道,這樣是沒用的,第一行指令不結束,第二行就不會動
 3. 使用Startup Delayer可以達到依序啟動
官方網站:http://www.r2.com.au/
中文版下載處:http://azo-freeware.blogspot.com/2007/08/startup-delayer-23126-beta.html(阿榮)
補充:安裝 Start Delayer 後,會在機碼的Run中寫入一段啟動碼以便開機啟動

測試3:開機啟動(startup Delayer + hstart)
    搭配上測試2、3的第三方軟體後,只要能做到開機自動登入系統,就可以達到開機啟動的目標
參考資料:http://itgroup.blueshop.com.tw/towns/hc?n=wodvew&i=392 第19點

測試4:開機啟動(使用工作排程器 + hstart)未試用
    這個方式也行,工作排程器在win 7以上的版本,已具有延遲工作時間的功能(如startup delayer的功能),而且他有一個優勢,排程器可以在電腦啟動時執行,也就是可以脫離使用者登入,這時就不用擔心使用者沒登入的問題了,但要測試過才知道呢!


11. 關於複製貼上的問題
這個問題在VBX 3.x版時就有出現了,在建立虛擬主機時,名稱無法使用Ctrl + C、Ctrl + V或複製貼上的方式,會造成虛擬系統當掉,而到了4.x版後,雖然使用了Ctrl + C、Ctrl + V,不會當掉,但會延遲很久,而且,如果使用遠端桌面連入後,會影響到host系統,非常奇怪的問題,towns 想這是個bug,不知道下一版會不會修正呢!

這個問題有解決方式了,在 設定值 ==> 一般 ==> 進階 ==> 共用剪貼簿及拖放功能,設定為 雙向,這時複製/貼上及拖拉功能就可以正常使用了
這個功能是有限制的
1. 共用剪貼簿,似乎只能用於host 與 guest 之間,如果towns使用 遠端連入(192.168.2.12:3393)這個方式連入,共用剪貼簿是不能用的
2. 拖放功能,這個必需 host 與 guest 的OS是相同的(如window 對 windows),才能使用拖放功能,也只能使用於 host 與 guest 之間


12. 縮放虛擬硬碟空間
擴大是比較單純的,可直接使用指令設定,但擴大後必需到guest系統中將磁碟的partition擴大才能使用擴大大空間
VBoxManage modifyhd winxppurl --resize 50000 <== 將winxppurl空間擴大到50GB
VBoxManage modifyhd d:vbxwinxppurl.vdi --resize 50000  <== 將winxppurl空間擴大到50GB

縮小空間,只能針對guest系統中剩下的空間做壓縮
VBoxManage modifyhd winxppurl --compact 壓縮winxppurl空間
VBoxManage modifyhd d:vbxwinxppurl.vdi --compact

縮小到指定大小。先做縮小空間,再縮到指定大小

補充:如果要縮放大小,不可使用vmdk格式(系統會提示該格式不行),必需使用vdi 格式,所以需先轉換
轉換方式
1. vboxmanage clonehd centos.vmdk centos.vdi --format vdi 等待完成
2. 在指定路徑上會出現 centos.vdi這個硬碟
3. 使用上面指令擴大硬碟空間
4. 重新掛載vdi 硬碟
其他做法就依本段說明處理

參考資料:玩物尚誌大的文章
http://blog.lyhdev.com/2013/01/virtualbox-vmdk-vdi.html

補充:已經有不少功能圖型化了,如轉換第一點,就可以在 檔案 ==> 虛擬媒體管理員 ==> 複製 ,這個功能做到哦!


13. 4.0.6更新到4.0.8會出現無法啟動虛擬機的問題
更新後出現以下錯誤訊息
圖1圖2
處理方式:移除4.0.8版再重新安裝即可,移除重新安裝,所有資料都不會遺失
這個問題似乎不只是出現在4.0.6更新到4.0.8,官網討論有提到http://forums.virtualbox.org/viewtopic.php?f=3&t=18369
以前towns直接昇級到是沒遇過這樣的問題,這是第一次呢!


14. 時間異常問題
towns的虛擬機在重新開機後,總是早了8小時,後來確定是因為VBX 的設定中,勾選了"在UTC時間的硬體時鐘",這個選項如果勾了,就是使用UTC時間,重開系統後,就不使用主機BIOS中的時間,在台灣就會出現8小時的誤差

註1:這個需要試一下,towns 在設定CentOS56時,有勾這個選項,時間卻是正確的
註2:如果host 系統為Unix-like 時要勾、windows不要勾
註3:如果Guest系統為Unix-like時,請勾選,因為選用後,時間比較不會發生過快或延遲的問題,不過這時時間會差8小時,再做NTP對時,就可以了
註4:在CentOS7中,如果已經將系統時間改為 Asia/Taipei(已將etc/localtime連接為Taipei),這時請將該項目勾選,如果沒有,請取消勾選,否則時間會快8小時


15. 擴充包昇級注意事項
擴充包的安裝要與VBX 的版本相同,否則會出現錯誤,如果誤裝了會造成虛擬系統無法啟動,這時再安裝舊版的擴統包,就可以解決問題了
官方說明:http://www.virtualbox.org/wiki/Downloads


16. 關於32與64bit 系統
VBX 如果安裝在32bit 的系統上,他的guest 就只能建32bit 的系統,如果安裝在64bit 系統上,他可以安裝32及64bit 系統


17. Linux 中安裝VBX(CentOS 6.2 64bit)
towns因為系統授權問題,想要使用Linux做為host,來架設虛擬主機
1. 取的repo(yum真是個好東西^0^)
wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo

2. 安裝 kernal-devel
yum install kernal-devel

3. 下載dkms,並安裝(這一點,在IF大的說明中並沒有)
套件可到 RPM Search中找到 reahat 6 版本的
dkms-2.1.1.2-1.el6.rf.noarch.rpm

4. 安裝VBX
yum install VirtualBox-4.2

5. 啟動服務
service vboxdrv setup

6. 啟動VBX。啟動後會在GUI上看到熟悉的畫面
 1. virturalbox ==> 指令啟動GUI VBX介面 
 2. 應用程式 ==> 系統工具中,也可以看到VBX的捷徑

7. 將管理者加入vbxusers 群組
gpasswd -a towns vgxusers <== 將towns帳號加入 vbxusers 群組

8. 建立資料匣,並變更資料匣群組及權限
towns在架設虛擬機時,習慣將每一台虛擬機所有的相關資料放在指定資料匣,所以towns會在/中新增vbx資料匣,並將vbx中的 預設機器資料匣 改到/vbx中,以方便管理,這時就一定要注意資料匣群組及權限設定,否則會無法安裝guest系統
chmod 775 /vbx
chown root:vgxusers /vbx

9. 架設guest 系統

10. 設定開機啟動
將指令寫到 rc.local中,並使用sudo -u [user],指定管理帳號啟動guest 系統

相關網址:
http://www.if-not-true-then-false.com/2010/install-virtualbox-with-yum-on-fedora-centos-red-hat-rhel/ 這是 IF大吧!
參考文件:https://www.virtualbox.org/manual/UserManual.html Vbox說明文件
參考資料:小舖討論區,蔥大說明http://www.blueshop.com.tw/board/FUM20050110200903ZWZ/BRD20121003143121C8S.html

註1:安裝完成後,KERN_DIR路徑並不會自動建立,需手動設定
註2:如果依照IF大的 Troubleshooting 設定KERN_DIR,會出現以下的錯誤
Trying to register the VirtualBox kernel modules using DKMS
Error! Your kernel headers for kernel 2.6.32-220.el6.x86_64 cannot be found at
/lib/modules/2.6.32-220.el6.x86_64/build or /lib/modules/2.6.32-220.el6.x86_64/source.
                                                           [失敗]
  (Failed, trying without DKMS)
Recompiling VirtualBox kernel modules                      [失敗]
  (Look at /var/log/vbox-install.log to find out what went wrong)
主因是 路徑錯誤
/lib/modules/2.6.32-220.el6.x86_64/build 這個link 有問題,需自行重建

註3:在VirtualBox的文件中,有說明到要安裝Qt及SDL套件,如果使用GUI介面管理,這兩個套件是必需的


18. CentOS 6.2 指令啟動guest OS
1. virtualbox ==> 開啟UI管理介面,必需在有UI 環境下才有用
2. /usr/bin/vboxmanage startvm winxp <== 啟動winxp,並開啟console
3. /usr/bin/VBoxHeadless -s winxp &<==啟動winxp,無console,背景執行
註1:記得設定遠端顯示及在host 端安裝遠端桌面軟體,否則無法控制guest OS哦!
註2:使用那個帳號架設VBX就必需使用那個帳號使用3這個指令,不可用towns安裝guest系統,用root帳號啟動,會出現錯誤訊息


19. VBX 4.1.10.r76836 問題(2012/03/18)
昇級該版本後,會造成網路異常,包含無法使用遠端桌面(或異常遲緩)、使用VNC異常遲緩、網路芳鄰無法連線等問題,如 4.1.8版使用正常,請暫勿昇級。如果已昇級,請將VirtualBox Host-Only Network 關閉,並重新啟動電腦試試


20. ubunto安裝VBX
詳細完整的圖形化安裝流程
詳細資料:http://it-easy.tw/ubuntu-virtualbox/ 幻嵐大的文章


21. 關機自動關閉(測試中)
towns執行關機時,通當都是到個各guest系統中,設定關機時間,但會遇到一種情形,就是停電後無法連入關閉guest,因為不是每一樣設備都接在UPS上面啊,這時towns只能按電源執行關機動作,這是guest系統就會遭強制關機了 = =。是否能解決這個問題,其實在windows中有解決方案。
設定方式(以win 7為例):
到群組原則 ==> 電腦設定 ==>  windows 設定 ==> 指令碼 - (啟動 / 關機) ==> 在 關機 的部分使用指令來關閉虛擬主機 ,這樣可以達到關機時自動關閉guest系統
參考資料:chweng大的blog
http://blog.chweng.idv.tw/archives/443


22. Virtual Box 更新
這兩版 4.2.8及4.2.10更新時間只差 17天,也許是因為4.2.8有其他重大問題,造成必需立刻更新,不過,這也太快了吧!


23. Virtual Box Direct3D 安裝問題
如果要玩日文遊戲,通常Direct3D 必需要啟用,Virtual Box是有支援,不過,必需在安全模式中安裝 Direct3D support,這個妙哦!^0^
安裝順序:
 1. 設定虛擬機:到指定虛擬機 ==> 設定 ==> 顯示 ==> 勾延伸選功能中的 啟用3D加速
 2. 到安全模式中 安裝Guest Addtions 並勾選 Direct3D support
檢查:
進入系統後,到 win key + r,在執行中打入dxdiag.exe。點選顯示 確認Direct3D 是否為啟用
註:最後VBX還是掛了= = ,出現的錯誤是與nvoglv64.DLL(Nvidia的OpenGL相關檔案)衝突,這個結果會造成guest系統當掉,不過,VMware可以正常的運作。


24. Virtual Box 4.2.10 的 Guest Addtions 問題
Virtual Box 4.2.10 的 Guest Addtions towns在guest端安裝時發生了檔案無法辨視的問題,不知道是只有towns這一台有問題,還是其他的也都有問題呢!這個問題不知道是否與上一個問題有關連性,目前正在測試
確認只有towns家中那一台,試過上一個問題後出現這樣的問題


25. VirualBox 4.2.14 的擴充包安裝問題(2013/06/24)
下載擴充包後直接點選安裝,會出現 VirtualBox Interface問題,而無法安裝,建議如果 4.2.12正常使用,暫時不要更新。
如果已經安裝並發生問題,請下載 4.2.12 版本的主程式及擴充包直接點選安裝,即可還原為舊版,不需重新設定
錯誤訊息


更新到4.2.16版本,仍然發生相同的問題,是不是towns的系統有問題啊!= =

再次測試,先將版本降為 4.2.12,再透過 檔案==> 喜好設定 ==> 擴充 ==> 加入擴充包,找出4.2.16擴充包檔案,這時會跳出擴充包昇級訊息,就可以直接昇級到 4.2.16 版,然後再安裝 4.2.16 版主程式,這樣就成功完成系統昇級

以前的昇級方式,取得新版主程式及擴充包,點選 主程式 開始安裝,安裝完成後,再點選擴充包程式,依說明昇級擴充包,完成昇級

這些動作顯然變的不直覺,不知道下一版更新時,是否仍會出現這樣的情形!拭目以待吧!


26. VirtualBox 4.2.18 擴充包安裝問題(2013/09/16)
相同的問題仍然再次發生,這個嘛~~~~


27. VirtualBox 4.3.4 擴充包安裝

至從VirtualBox安裝擴統包一直有問題來,有好一段時間沒有更新VirtualBox,今天看到 4.3.4更新,想說試試看,good,這個問題官方已經處理掉了


VirtualBox 4.3.16 擴充包安裝有問題,先不要昇級(2014/10/07)
VirtualBox 4.3.18 已經改善此問題(2014/10/15)


28. VirtualBox設定由USB隨身碟開機

高登大相當厲害啊!
1. 確認隨身碟為磁碟N
我的電腦,按滑鼠右鍵 ==> 管理 ==> 磁碟管理
2. 執行 VBoxManage internalcommands createrawvmdk -filename [存檔路徑]usb.vmdk -rawdisk .PhysicalDriveN
3. 在VirtualBox中將產生的usb.vmdk加入磁碟
註:如果只有這個硬碟,就不用額外設定,如果有兩個硬碟,就用F12開啟開機選單選擇

高登大的文章
http://gordon168.tw/?p=324


29. 設定燒錄機

在設定光碟機時,選 實體光碟機 ,並勾選 通透 。

資料來源:企鵝大的文章
http://tzoyiing.pixnet.net/blog/post/25399562-%E5%85%8D%E8%B2%BB%E8%99%9B%E6%93%AC%E6%A9%9F%E5%99%A8%E8%BB%9F%E9%AB%94%E3%80%8Avirtualbox%E3%80%8B%E7%9A%84%E5%AE%89%E8%A3%9D%E3%80%81%E8%A8%AD%E5%AE%9A


30. 關於NAT模式,並使用固定IP問題

towns的這個需求是因為開了多台虛擬機(guest),如果大家都使用10.0.2.15,我要怎麼使用連接埠轉送(port forwarding)呢!

towns用手動設定方式將IP設為10.0.2.15,guest對外連線(連到網際網路)就掛了,目前正在看關於NAT設定的問題呢!

看過了Andre的說明後,看來是不能設定的,如果要怎麼做到是有另一方式,就是各台guest使用不同的網路介面卡,因為使用介面卡1,會出現10.0.2.x,使用介面卡2,會出現10.0.3.x,可是,這方式好像只能用四台呢! ^^"

參考資料:Andre大的回應
https://forums.virtualbox.org/viewtopic.php?f=1&t=49066


31. 關於 Host-Only 介面

當towns開啟多台伺服器時,需要彼此互通,以往towns可以掌控網路時,都使用Bridge,大家就拿一個固定private IP,就解決了,但現在不行了,網路管很大,那有IP給towns使用啊,這時使用Host-Only介面,就會非常方便了,只要兩台主機都有一個網卡設為Host-Only,並設為DHCP取得IP,兩台就能戶通了。

有時towns得設固定IP,Virtualbox也很體貼的設定了DHCP的IP從101開始,也就是說towns可以使用100以前的IP來做為固定IP使用哦!

補充:Host與Guest互通,也只需要使用Host-Only介面,不需要使用NAT,看來NAT只有在guest需要連上外部網路,又只有一個IP可用時才有需要了。Host-Only有一個很大的好處,就是不用透過外部的Switch,Host <==> Guest速度就會變快很多哦!

相關資料:阿舍大的blog -- 同時使用host-only及NAT達到不設定NAT轉port就可以互連網路
http://www.arthurtoday.com/2013/07/ubuntu-guest-enables-nat-and-hostonly-adapter.html


32. 移機出現藍底白字(win XP)

這個問題是towns第一次遇到,而且,只發生在這台主機
錯誤訊息:DRIVER_UNLoADED_WITHOUT_CANCELLING_PENDING_OPERATIONS
0x000000CE
這個錯誤訊息看來是告知驅動程式異常造成,他在安全模式下仍可登入

處理方式1:到guest的安全模式中,修改CPU的機碼
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesProcessor
or
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesIntelppm
將start值改為4,關閉該驅動程式

處理方式2:到guest的安全模式中,將OEM的驅動程式刪除
1. 進入安全模式
2. 到 %Systemroot%Inf 刪除所有的 OEM*.inf <== 這個可能是非必要的
3. 到 C:windows 刪除 intelppm.sys <== 可能不止一個,towns搜尋的結果在windows資料匣中有5個這個檔案
4. 重新啟動電腦
5. 重新安裝Additions

補充1:硬體規格
CPU:Intel Core i3-3240
MB:ASUS BM6330
Chip:Intel H61

補充2:這個問題只會發生在guest系統為 XP的情形
補充3:一般來說,第一個方式就可以了,如果不行再執行第二個方式
補充4:C:WINDOWSsystem32driversprocessr.sys ,這個檔案是否也要處理
補充5:檔案位置
C:WINDOWSsystem32driversintelppm.sys
C:WINDOWSServicePackFilesi386intelppm.sys

資料來源:
VirtualBox官方討論
https://forums.virtualbox.org/viewtopic.php?f=9&p=96866

Benjamin大的blog
http://blogs.msdn.com/b/virtual_pc_guy/archive/2005/10/24/484461.aspx

Randall大的文章
http://www.randallkent.com/virtual-box/windows-xp-guest-reboot-coutinuously


33. X-win 安裝 VBoxAdditions 問題

Guest OS:Cent OS 7.0.1406(Kernel:3.10.0-229)
Vbox:4.3.24(Extension:4.3.24)

問題:安裝後發生無法啟動 vboxadd、vboxadd-service 這兩個服務,出現錯誤
Failed to start LSB: VirtualBox Linux Additions kernel modules.
Failed to start LSB: VirtualBox Linux Additions service.

處理:加裝DKMS套件

註1:如果在安裝DKMS套件前就已經安裝了Additions,安裝DKMS並啟動Additions流程為
安裝 DKMS ==> 重新啟動系統 ==> 重新安裝 Additions
註2:必需連kernel 同時更新,否則在更新DKMS後會發生部份版號改變,但核心版本未變更,這時會造成Additions無法正常安裝
註3:更新kernel 後,最好能重開系統,否則容易發生路徑錯誤問題
註4:更新kernel 套件時,towns會同時更新 kernel-headers kernel-devel kernel-tools kernel-tools-lib
註5:重新安裝Additions,就是重新執行一次 VBoxLinuxAdditions.run 就可以了,他會自動刪除舊資料,安裝新資料
註6:Virtualbox 5.0.10 已配合CentOS7.1版,改為連結了

資料來源:官網的Ticket
https://www.virtualbox.org/ticket/11815


34. 移機出現 0x000000C4 錯誤(win 81 64bit)

這也是towns第一次遇到

原因:Virtualbox 沒有開啟 CMPXCHG16B CPU 指令支援造成
處理方式:
1. 確認虛擬機名稱:vboxmanage.exe list vms,找出問題win 81的虛擬機名稱
2. 啟用CMPXCHG16B CPU 指令支援:vboxmanage.exe setextradata "[虛擬機名稱]" VBoxInternal/CPUM/CMPXCHG16B 1

設定完成後,就可正常開啟了

參考資料:卡飯教程文章
http://www.kafan.cn/edu/80018124.html


35. Host-Only介面管理

不知道那一個版本開始有Host-Only管理介面,towns使用的4.3版已經有了
檔案 ==> 喜好設定 ==> 網路 ==> 「僅限主機」網路


36. 安裝windows 10 guest

如果要安裝windows 10 到VirtualBox 中,請使用5 以上的版本,顯示卡才能正常支援


37. VirtualBox 4.3 啟用 EFI

EFI 越來越流行了,不止在筆電中現在連新的主機版,也都有有支援了,towns 想使用 VirtualBox 來玩完 EFI Shell,不知道這麼做是否可行呢!

4.3 版已經有提供 EFI 選項了,點選後是否可用呢?

在 設定值 ==> 系統 ==> 啟用 EFI (僅特定作業系統)

再用隨身碟開機

參考資料:Hung大的blog
http://blog.xuite.net/yh96301/blog/310540845-VirtualBox+4.3%E5%95%9F%E7%94%A8EFI 


38. windows 7(windows 2k8 R2)更新KB3004394後,無法正常開啟虛擬機

這個問題只會發生在 windows 7 中,當安裝 KB3004394 後,啟動Guest,會出現如下圖的錯誤

但出現了這個問題後,Guest 仍可正常開啟,只是會出現兩次這個錯誤,不要關閉錯誤,到第三次時Guest 系統就會開啟了

列表說明
1. 該問題只會發生於 windows 7及windows 2k8 R2
2. 一但發生該問題,不論那個版本的Virtualbox,都會出現錯誤(towns 試過4.3.28、5.0.10、重新安裝)
3. 移除KB3004394 更新,問題仍存在(這個應該是根憑證的問題)
4. KB3024777修補更新無法正常安裝(怎麼點都不能裝)
5. 目前towns還沒解決問題

參考資料:
Virtualbox 討論串
https://forums.virtualbox.org/viewtopic.php?t=64111&f=6
https://forums.virtualbox.org/viewtopic.php?f=6&t=64777

微軟修正檔下載(KB3024777)
https://support.microsoft.com/zh-tw/kb/3024777

T客邦 -- janus大的文章
http://www.techbang.com/posts/21451-december-update-package-of-windows-7-kb3004394-update-fixes-see-here  


39. 小紅傘造成無法正常開啟虛擬機

第38點towns 寫錯啦!是小紅傘造成無啟動的
VB_e1.JPG - virtualbox
這個錯誤,只要移除小紅傘後,就可以解決了,不過,如果要正常使用小紅傘呢!該怎麼處理

處理方式:做完以下動作VirtualBox就會正常運作了
1. 開啟小紅傘管理介面 ==> 其他功能 ==> 組態 ==> 一般 ==> 資訊安全 ==> 將產品保護中的三項取消 ==> 確定
2. 到windows 的開始 ==> 控制台 ==> 系統及安全性 ==> 系統 ==> 裝置管理員 ==> 檢視 ==> 顯示隱藏裝置 ==> 非隨插即用驅動程式 ==> avipbb 上按滑鼠右鍵 ==> 內容 ==> 驅動程式 ==> 將啟動 類型設為已停用 ==> 重新啟動電腦

補充:第一動,只需在第二動完成後,就可以再打開了 ^^

參考資料
hoyo大的blog
http://blog.hoyo.idv.tw/?p=2739

virtualbox討論串
https://forums.virtualbox.org/viewtopic.php?f=6&t=64851 


40. 磁碟映像檔加密功能

在 5.0 以上的版本開始有磁碟映像檔加密功能,主要是限制轉移虛擬硬碟,不過有一些限制
1. 需加裝 Extension Pack
2. ??
3. 無法匯出磁碟映像檔,要先解密後才可以
4. 資料加密金鑰(data encryption keys;DEK)功能會持續開著,寫入的資料會被加密
5. ??
6. 無法使用鏡像(快照)功能

加入方式
1. 開啟管理員 ==> 選擇要加密的虛擬系統 ==> 設定值 ==> 一般 ==> 勾選 加密,並打入密碼兩次
2. vboxmanage encryptmedium "D:VBOXCentOS7_GUICentOS7_GUI.vdi --newpassword "-" --cipher "AES-XTS128-PLAIN64" --newpasswordid "CentOS7_GUI"
下完指令後,會要求打入密碼

設定後啟動系統會要求打入密碼

移除方式
1. 開啟管理員 ==> 選擇要加密的虛擬系統 ==> 設定值 ==> 一般 ==> 取消勾選 加密,並打入密碼一次
2. vboxmanage encryptmedium "D:VBOXCentOS7_GUICentOS7_GUI.vdi --oldpassword "-"
下完指令後,打入密碼一次

參考資料:官方說明
https://www.virtualbox.org/manual/ch09.html#diskencryption 


41. 5.1 版新增的功能

1. 使用 no console 開啟 guest 系統後,仍可以在 console 端點兩下主機打開 console 介面
2. 關閉時,系統會問是否仍於背景執行


42. Guest Additions 管理

rcvboxadd setup <== 設定 Guest Additions 指令
註1:如果已經有安裝 Guest Additions,這個指令將會重置 Guest Addtions
註2:這個指令有五個功能 {start|stop|restart|status|setup}

參考資料:官網
http://www.virtualbox.org/manual/ch04.html#idm1948  


43. 匯出匯入 ova

參考資料:官網
http://www.virtualbox.org/manual/ch01.html#ovf <== GUI 匯出匯入
http://www.virtualbox.org/manual/ch08.html#vboxmanage-export <== command 匯出匯入 


44. windows 10 與 virtualbox 相容性問題(查測中)

目前系統 windows 10 1703(15063.540)+ virutalbox 5.1.26
1. 使用 NAT 模式,是可以正常連線的
2. 使用 bridge 模式,網路看來正常,但無法顯示網頁

在官網說明,目前 host 的部分支援到 Windows 10 RTM build 10240 (32-bit and 64-bit),不知道是不是因為不支援新版造成,查測中

檢測情形(使用 bridge 模式)
1. 透過 wireshark 查看,發覺使用連網頁 80 port 無回應
2. 使用 443 則正常

參考資料:官網
https://www.virtualbox.org/manual/ch01.html#hostossupport  


45. 架設 Guest 系統時時間設定注意事項

在 Guest OS 是 Linux 系統時,預設是勾選"硬體時間以 UTC 時間",在 windows 系統時,則不選,不過,還是要注意一下 Linux 系統時間是否正確


46. 建立 Share Disk

Share Disk 用途是?當有兩台以上的 VM 需要共用資料匣(共同的資料放在指定的路徑,如 NFS的功能),Share Disk 就發的功能了

參考資料:
Tim 大的文章 -- Oracle RAC 建置 -- Create Shared Disk 這一段
https://oracle-base.com/articles/12c/oracle-db-12cr2-rac-installation-on-oracle-linux-7-using-virtualbox 


47. 安裝 Docker for Windows 造成 Virtualbox 無法使用全虛擬化問題

在安裝 Docker for Windows 後,啟動原有的 guest 系統後出現下面這個問題

WHvCapabilityCodeHypervisorPresent is FALSE! Make sure you have enabled the 'Windows Hypervisor Platform' feature. (VERR_NEM_NOT_AVAILABLE).

VT-x is not available (VERR_VMX_NO_VMX).

解法1:
使用 administrator 進入 cmd 模式,並執行以下指令(關閉 windows 於開機時載入 Hyper-V)
bcdedit /set hypervisorlaunchtype off
重新啟動系統
Virtualbox 就能正常運作了

註1:在錯誤訊息中其實是說明,在 BIOS 中要開啟 VT-x 功能,但 towns 是有開啟的
註2:這個問題並不一定是因為版本更新造成,因為在更新前,towns 為了安裝 Docker on windows,開啟了 Hyper-V 及 Containers 功能
註3:但如果在開啟 hypervisorlaunchtype,Virtualbox 就會再出錯了

補充說明1:
開啟 hypervisorlaunchtype 後,虛擬化會由系統控制(windows 控制),這時 VT-x/AMD-v 這些 CPU 上的實體虛擬化功能將會被 Hyper-V 管理,Virtualbox 就會抓不到 VT-x/AMD-v 導致 Virutalbox 無法開啟全虛擬化功能

補充說明2:
這下糗了,如果要使用新版的 Docker(支援 Hyper-V)的版本,就必需開啟 hypervisorlaunchtype(也就是啟用 Hyper-V),如果要與 virtualbox 全虛擬化共用,就必需使用舊版的 Docker(docker toolbox),不然,就得常常切來切去啦!啊唉唉!目前還沒有好解法,這個問題也會影響到 VMware-workstation 哦!

參考資料:
javamonamour
http://www.javamonamour.org/2019/01/virtualbox-and-hyper-v-on-windows-10-pro.html

StackExchange 討論
https://superuser.com/questions/1153470/vt-x-is-not-available-but-is-enabled-in-bios 

豆蔻词工难赋深情文章 -- Docker For windows 無法與 Virtualbox 共用
https://blog.csdn.net/zhang197093/article/details/78643708 


48. 安裝 windows server 2019 出現嚴重錯誤

以下兩個方式都沒用哦!

vbox 安裝 windows server 2019 問題
1. windows 10 啟動 Hyper-V
cmd-admin => bcdedit /set hypervisorlaunchtype off
set => bcdedit /set hypervisorlaunchtype auto
default => 空值
cmd-admin => bcdedit /enum
註:如果手動設定了這值,就必需手動關閉,否則vbox會無法正常啟動

2. vbox --spec-ctrl 問題


cmd-admin => VBoxManage modifyvm "win2k19" --spec-ctrl on
default => VBoxManage modifyvm "win2k19" --spec-ctrl off
D:\vbox\win2k19 => <SpecCtrl enabled="true"/>

參考資料
vbox 官方討論 -- scottgus1 大回應
https://forums.virtualbox.org/viewtopic.php?f=6&t=97100

iT邦幫忙 -- arksu 大文章
https://ithelp.ithome.com.tw/articles/10187041

vbox 官方回應
https://www.virtualbox.org/ticket/19080


49. 安裝 windows server 2019 問題

安裝 2019 一定要提供 2 個以上的 Core(4個比較穩),否則會發生單一個 Core 的 Loading 變成 100%,溫度也會飆高


其他資訊

某大大的Blog
http://linux-cisco.blogspot.tw/2012/05/virtulalbox-extension-pack.html

真大的Blog
http://dragonspring.pixnet.net/blog/post/37295068-virtualbox-4.2-%E7%9A%84%E7%96%91%E9%9B%A3%E9%9B%9C%E7%97%87

baiyuan大的文章 -- 進階NAT
http://ithelp.ithome.com.tw/question/10108486

三少大的文章 -- 網路設定
http://www.dotblogs.com.tw/cyl1688/archive/2009/08/14/1005.aspx

沒有留言:

張貼留言

(Centos-7s) 更新: 網卡名稱改回 eth0 的方法

將 CentOS 7 網卡名稱修改, 用回 Eth0 的方法:   1) # vi /etc/sysconfig/grub 內容大概是這樣:   GRUB_TIMEOUT=5 GRUB_DISTRIBUTOR="$(sed 's, release...