在FreeBSD上安裝VMware-Tools

剛在VMware上裝了個FreeBSD,現在爲了發揮更多的功能,打算把VMware-Tools裝上,以下是我安裝的過程,分享給大家。

環境:VMware workstation 7.0 + FreeBSD 8.0

安裝支持FreeBSD的VMware-Tools,需要freebsd.iso這個文件,通常應該在vm的安裝目錄中可以找到,我用的是精簡安裝 版的vm,只在它的main目錄中找到了windows.iso,沒辦法下一個吧(搜索“VMware tools for FreeBSD”應該可以下載到)。然後在虛擬光驅中加載下載到的freebsd.iso這個文件(需要把vm的光驅設置成你安裝的虛擬光驅),那麼下一 步就是啓動vm登錄FreeBSD並執行命令行。

view plainprint?1 # mount /cdrom //加載光盤 

# cp -r /cdrom/vmware-tools-distrib /tmp/vmware-tools-distrib  //複製目錄(有的可能是 vmware-freebsd-tools.tar.gz 這個壓縮文件,需要解壓到/tmp目錄下) 
# cd vmware-tools-distrib //進入目錄 
# ./vmware-install.pl //運行安裝腳本

到這裏出現了一個小插曲(而且後來的經歷證明那是相當曲折),當我運行此文件時,系統出現“./vmware- install.pl:Command not found.”的提示,這是爲什麼呢?原來要運行.pl文件,系統必須支持perl,但默認系統並沒有安裝,所以還得先讓系統支持perl。

方法:
當運行 ./vmware-install.pl 命令且系統出現“./vmware-install.pl:Command not found.”提示時,運行一下命令:
# cd /usr/ports/lang/perl5.8 && make WITH_GDBM=yes install clean

這時候你可以去喝杯水,等你回來就可以繼續運行 .pl 文件了,但是等你一路ok下去,依然會出現上圖顯示的問題。別嘆氣,從perl的安裝腳本可以發現,其中會運行“vmware-checkvm”來檢查是 否是在虛擬機上運行,如果直接在命令行運行此命令,則出現以下提示:

問題也就出在這,要運行 vmware-checkvm 這個靜態的二進制鏈接,FreeBSD需安裝 compat6x port ,那好,再運行以下命令:
# cd /usr/ports/misc/compat6x && make install clean

又是一段等待,但是等你打個哈欠之後,這個過程可能就結束了,那麼這時就可以重新運行 vmware-install.pl 文件了嗎?答案是no,“暈倒”——也許你想這樣說。其實 Vmware 期望 libc.so.6 庫被 compat6x 安裝到 /lib 目錄,但是所有 compat{3,4,5,6}x ports 都把它們的庫安裝到了 /usr/local/lib/compat 目錄以避免打亂了系統文件,那麼我們可以在這裏爲 Vmware 創建一個指向 libc.so.6 的軟鏈接,所以執行以下命令:
# ln -s /usr/local/lib/compat/libc.so.6 /lib

這樣就可以了吧?但是當你看到下圖,你就知道答案依然是no,“這麼麻煩啊”——我也想這樣說。

這說明,即使我們登錄的是虛擬機的控制檯,tcsh (root shell in FreeBSD) 也會設置 REMOTEHOST 這個變量,所以執行以下命令:
# unsetenv REMOTEHOST

到此就可以再次執行 ./vmware-install.pl 文件了,一路ok到最後就應該可以看到成功的畫面了,試試吧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章