在32位Windows XP的VMWare裡安裝64位Ubuntu Linux/JDK1.6

阿敏總司令發表於2008-12-21
1、CPU
AMD系列的CPU略過
Intel系列的CPU晶片需要支援EM64T和VT技術才行,並且BIOS也要支援才可以。
為了確定你的Intel CPU是否支援VT,請檢視:
[url]http://compare.intel.com/pcc/default.aspx?familyid=5&culture=en-US[/url]
我的筆記本CPU是:Intel Mobile Core 2 Duo T7300支援EM64T,如下圖
[img]/upload/attachment/61725/28e175eb-b745-33e4-8680-ca778d77a1f8.jpg[/img]

如果BIOS裡沒有設定支援VT(Virtualization Technology),會在建立VMWare後,安裝64位Linux時,會報如下錯誤:
This CPU does not support VT.
You have configured this virtual machine to use a 64-bit guest operating system. However, this host's CPU is not capable of running 64-bit virtual machines or this virtual machine has 64-bit support disabled.
For more detailed information, see [url]http://www.vmware.com/info?id=152[/url]

然後不能啟動,會報如下錯誤:
This kernel requires an x86-64 CPU, but only detected an i686 CPU.
Unable to boot - please use a kernel appropriate for your CPU.
更多VMWare硬體要求的資訊參見:
Hardware and Firmware Requirements for 64-Bit Guest Operating Systems
[url]http://kb.vmware.com/selfservice/viewContent.do?externalId=1901[/url]

2、BIOS
設定BIOS,Virtualization Technology 為 enabled 後,儲存。
儲存好修改後的BIOS後,需要冷啟動一下,即:關機,再開機。這樣這個設定才生效,要不然仍然無法生效。這個一定要注意,直接通過重啟Windows無法達到這個目的的。cold rebooting the machine.
詳細:
我的Lenovo X61,F1進入BIOS設定
BIOS Setup Utility
Config ==> CPU ==> Intel(R) Virtualization Technology ==> 設定為 Enabled
When enabled, a VMM can utilize the additional hardwar capabilities provided by Intel(R) Virtualization Technology.
NOTE
=======
After any change in this option, system must be powered off to take effect.

3、載入Ubuntu安裝介質,順利啟動安裝
在安裝在72%,會停在“Configuring apt”,“Scanning the mirror”這個地方,此時可以設定VMWare的網路連線方式為Host-only,因為我剛開始是設定為Bridged方式,所以也卡在這裡
[img]/upload/attachment/61727/a2675c17-91c9-37ca-b6e5-c7ef10c90217.jpg[/img]
即可,這樣就是斷開與Internet的連線,不去獲取資訊,就會順利安裝完成了。當然,在建立虛擬機器時,你的網路配置就是為這個Host-only,或者你的主機沒有連上網路,也會順利地安裝下去了。

4、安裝VWMare Tools
基於安全方面的考慮,Ubuntu預設是禁止了 root 使用者的,會出現你的當前使用者安裝不了 VMWare Tools 的現象。
可以先通過 sudo passwd root 去設定 root 密碼,然後切換到 root 使用者下,再去安裝 VMWare Tools 即可。

5、驗證
檢視Linux系統是不是64位的?
uname -m
會顯示x86_64
當然uname -a會顯示所有的資訊,在裡面如果看到有_64表示是64位的,沒有則是32位的。
file /sbin/init
/sbin/init: ELF 64-bit LSB shared object, x86-64, version 1(SYSV), for GNU/Linux 2.6.8, dynamically linked (uses shared libs), stripped
但getconf WORD_BIT仍是32,奇怪

6、安裝Sun 64位JDK 1.6.0.11
Java SE Development Kit (JDK) 6 Update 11 for Linux x64, Multi-language
http://java.sun.com/javase/downloads/?intcmp=1281
./java -version
java version "1.6.0_11"
Java(TM) SE Runtime Environment (build 1.6.0_11-b03)
Java HotSpot(TM) 64-Bit Server VM (build 11.0-b16, mixed mode)
嘗試加大記憶體,注意我開了給VMWare開了3G的記憶體才有這麼大
./java -Xms4577m -Xmx5099m -version
java version "1.6.0_11"
Java(TM) SE Runtime Environment (build 1.6.0_11-b03)
Java HotSpot(TM) 64-Bit Server VM (build 11.0-b16, mixed mode)

7、載入Windows機器上的共享資料夾
要先切換到 root 使用者,然後如下去掛接
mount -t smbfs -o codepage=cp936,username=Windows共享使用者名稱,password=密碼 -l //IP地址/共享資料夾名 Linux中的掛接點

8、總結注意點
[size=large][color=red]
CPU的EM64T和VT技術支援;
BIOS的VT開關設定後一定要冷啟動一下生效之,這一點很重要,要不然怎麼整都不行的;
安裝時網路不要連線,安裝後再連線上網路去安裝其它軟體;
安裝VMWare Tools與載入Windows共享資料夾都需要切換到root使用者。[/color][/size]

相關文章