轉(zhuǎn)自:
http://www.linuxsir.org/bbs/thread356811.htmlVMware Workstation 6.5.3是最近才推出的工作站桌面領域的頂尖虛擬化工具,相比VirtualBox而言,更加穩(wěn)定、支持客戶操作系統(tǒng)種類更廣泛,運行性能有了更進一步提高,支持多核CPU,是業(yè)界的龍頭老大,自不必多言。不過如果你以Linux作為宿主操作系統(tǒng)安裝VMware WS 6.5.3的話,可能會有些問題,主要是VMware WS在Linux宿主環(huán)境下對聲音設備的支持仍然采用OSS標準,目前Linux系統(tǒng)早已采用ALSA聲音架構,且絕大多數(shù)發(fā)行版已采用 PulseAudio作為聲音服務器,底層基于ALSA,因此VMware WS在這種情況下默認是無法發(fā)出聲音的。在Fedora 11下,最新的VMware WS 6.5.3居然在安裝時還會發(fā)生長時間掛起現(xiàn)象,連安裝都無法正常完成,究其原因,可能是新版在進行內(nèi)核模塊配置及編譯時的出錯處理以及后臺進程控制上可能有點問題。因為最近正好要在Fedora 11開發(fā)環(huán)境下安裝VMware WS,虛擬一個WinXP出來用于開發(fā)及網(wǎng)絡測試,通過google和實踐,總算摸索出一套行之有效的辦法,解決了在Fedora 11下安裝VMware WS 6.5.3以及讓VMware完美利用PulseAudio使虛擬機發(fā)出聲音,并且沒有任何暴音、斷續(xù)、泡泡音的問題,順帶還把Fedora 11下PulseAudio存在的一些問題也一并解決了。
1、在Fedora 11下安裝VMware WS 6.5.3
下載VMware WorkStation 6.5.3安裝包,不要用.rpm的版本,我們采用.bundle的版本。
在圖形環(huán)境下打開兩個命令終端窗口,其中一個切換成root,采用命令“su -”就可以切換為root,當然要輸入root口令了。
在切換root的命令終端窗口,輸入以下內(nèi)容:
while true; do killall -9 vmware-modconfig-console; sleep 1; done
然后回車,不要理會提示的信息。這主要是為了等會兒在VMware WS安裝的過程中發(fā)現(xiàn)內(nèi)核編譯安裝開始就強行關閉編譯安裝過程,否則安裝會一直掛起的!
在非root身份的另外一個命令終端窗口,進入到.bundle安裝包文件所在目錄,輸入以下命令:
chmod a+x VMware-Workstation-6.5.3-185404.i386.bundle
sudo ./VMware-Workstation-6.5.3-185404.i386.bundle --ignore-errors
然后回車,會出現(xiàn)VMware WS 6.5.3的安裝窗口,很簡單,直接點下一步或者確定,直到順利安裝完成。
到此,VMware WS 6.5.3其實還沒有真正安裝完成,因為關鍵的內(nèi)核模塊其實還沒有編譯安裝,這時,我們回到root的那個命令終端窗口,按Ctrl-C中斷那個不斷循環(huán)的腳本命令,然后輸入以下命令:
vmware-modconfig --console --install-all
然后回車,這樣就開始自動編譯安裝所有依賴的內(nèi)核模塊,全部完成后,VMware WS 6.5.3的安裝才真正大功告成。
2、解決VMware WS 6.5.3在PulseAudio環(huán)境下無法發(fā)出聲音的方法
VMware WS 6.5.3仍然采用OSS來支持聲音設備,但現(xiàn)在Linux早已采用ALSA聲音驅(qū)動架構了,OSS已經(jīng)淘汰,并且?guī)缀跛邪l(fā)行版都采用 PulseAudio作為聲音服務器,所以要讓VMware能夠使用聲音設備在虛擬機中發(fā)出聲音,必須通過PulseAudio來模擬OSS讓 VMware的聲音功能正常。一般來講,ALSA自己還有一個aoss插件,也可以模擬OSS,但是這會和PulseAudio產(chǎn)生一些問題,導致 VMware發(fā)出的聲音暴音或者斷續(xù)泡泡音,所以,首先要確保系統(tǒng)中沒有安裝aoss,如果有,一定要刪除,刪除的方法是用
sudo yum remove alsa-aoss*
命令即可。另一方面,為了讓PulseAudio的OSS模擬以及多音頻流能夠正常工作,它和ALSA必須能夠互通,這需要借助于ALSA的 PulseAudio插件,因此還必須安裝ALSA的PulseAudio插件,你應該確認系統(tǒng)中有已安裝有alsa-plugins- pulseaudio這個軟件包,如果沒有,用
sudo yum install alsa-plugins-pulseaudio
命令安裝即可。接下來,我們需要對VMware WS 6.5.3的啟動程序文件進行一些修改,請參照下面的命令:
$ cd /usr/lib/vmware/bin
$ sudo mv vmware-vmx vmware-vmx.real
$ sudo vi vmware-vmx
在vi中輸入以下內(nèi)容:
#!/bin/bash
padsp /usr/lib/vmware/bin/vmware-vmx.real "$@"
保存后退出。
$ sudo chmod a+x,u+s vmware-vmx
$ cd /usr/lib
$ sudo chmod u+s libpulsedsp.so
$ sudo vi /etc/pulse/daemon.conf
在vi中輸入以下內(nèi)容:
high-priority = yes
nice-level = -11
realtime-scheduling = yes
realtime-priority = 5
resample-method = speex-float-3
default-fragments = 4
default-fragment-size-msec = 4
保存后退出。
$ sudo vi /etc/security/limits.conf
確保在vi中有如下內(nèi)容(如果沒有則增加):
@pulse-rt - rtprio 99
@pulse-rt - nice -20
保存后退出。
$ sudo vi /etc/pulse/default.pa
在vi中找到load-module module-hal-detect這一行,改為
load-module module-hal-detect tsched=0
保存后退出。
然后將當前你登錄的用戶賬號加入到pulse-rt、pulse-access組中,可以用GNOME提供的“用戶和組群”圖形化工具來添加。
以上這些都完成后,重新啟動整個系統(tǒng)(而不是僅僅注銷),然后運行VMware WorkStation,新建一個虛擬機,注意在聲卡配置的時候,不要選擇“Auto Detect”,一定要手工強制輸入為/dev/dsp,保存配置,因為VMware的自動檢測其實根本檢測不到任何OSS聲卡設備,我們因為是采用 PulseAudio來模擬OSS,必須強制輸入/dev/dsp,這個僅僅在VMware運行的時候動態(tài)在內(nèi)存在創(chuàng)建,硬盤上是找不到這個設備文件的。之后就可以安裝虛擬機操作系統(tǒng)了,VMware WS的虛擬機系統(tǒng)將會由PulseAudio來模擬OSS正常發(fā)出聲音,并且可以和Fedora 11宿主系統(tǒng)中的其他多媒體程序共同實現(xiàn)多音頻流,互不影響,上述操作順帶還解決了Fedora 11下PulseAudio聲音暴音、斷續(xù)、CPU占用量高等問題,所有的暴音、斷續(xù)、泡泡音、CPU高占用率等現(xiàn)象都不存在了,聲音變得清澈連續(xù),呵呵,太完美了。
posted on 2009-11-27 22:17
老馬驛站 閱讀(583)
評論(0) 編輯 收藏 引用 所屬分類:
linux