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