適用于fedora 12, i386平臺(tái),Virtualbox 3.1.2 OSE版,其他環(huán)境我不保證能正常編譯/安裝/使用。注意:該腳本沒有加載另外兩個(gè)內(nèi)核模塊,請(qǐng)參考下一篇《fedora 12 virtualbox 3.1.2_OSE 驅(qū)動(dòng)模塊加載》(2010-01-11 runsisi@HUST)。由于學(xué)校是教育網(wǎng),上國(guó)外網(wǎng)幾乎是不可能,但自己經(jīng)常要去國(guó)外網(wǎng)下/看點(diǎn)什么東西,很麻煩,幸虧有搜狗,但問題是搜狗沒有l(wèi)inux版本,決定裝一個(gè)虛擬機(jī),VMware顯然不適合我這1G內(nèi)存的機(jī)器,況且還是筆記本。
Virtualbox的官方有很多種格式的binary下載,當(dāng)然也不缺rpm,問題是官方有點(diǎn)變態(tài),給出的不是直接的下載地址,不能另存為,直接點(diǎn)鏈接要不是出來(lái)迅雷,要不就出來(lái)kmplayer,不知道kmplayer怎么跟rpm關(guān)聯(lián)到一塊了,在kmplayer的文件關(guān)聯(lián)里還竟然沒找到rpm,算了,下不了rpm還是直接下源代碼自己編譯吧。
安裝要求:
這個(gè)自己configure就知道了,下邊是我configure的輸出:
Checking for environment: Determined build machine: linux.x86, target machine: linux.x86, OK.
Checking for kBuild: found, OK.
Checking for gcc: found version 4.4.2, OK.
Checking for as86: found version 0.16.17, OK.
Checking for bcc: found version 0.16.17, OK.
Checking for iasl: found version 20090123, OK.
Checking for xslt: found, OK.
Checking for pthread: found, OK.
Checking for libxml2: found version 2.7.6, OK.
Checking for libxslt: found version 1.1.26, OK.
Checking for libIDL: found version 0.8.13, OK.
Checking for ssl: found version OpenSSL 1.0.0-beta4 10 Nov 2009, OK.
Checking for libcurl: found version 7.19.7, OK.
Checking for zlib: found version 1.2.3, OK.
Checking for libpng: found version 1.2.39, OK.
Checking for SDL: found version 1.2.13, OK.
Checking for X libraries: found, OK.
Checking for Xcursor: found, OK.
Checking for Xmu: found, OK.
Checking for Mesa / GLU: found version 1.2, OK.
Checking for Qt4: found version 4.5.3, OK.
Checking for Qt4 devtools: found version 4.5.3, OK.
Checking for python support: found version 2.6.2, OK.
Checking for static stc++ library: found, OK.
Checking for Linux kernel sources: found version 2.6.31, OK.
Checking for ALSA: found version 1.0.22, OK.
Checking for PulseAudio: found version 0.9.21 API version 12, OK.
Checking for libcap library: found, OK.
Checking for compiler.h: compiler.h not found, OK.
缺少什么包它會(huì)提示的,一般都是devel包,其中as86在fedora中是包含在dev86下,在ubuntu中是包含在bin86下。
注意:configure時(shí)添加--disable-hardening選項(xiàng),官方說hardening是一個(gè)feature不是bug,但如果不disable,我是死都不能成功運(yùn)行的,網(wǎng)上隨便一搜就能搜到關(guān)于這個(gè)問題的求助,反正依我使用google的能力我是解決不了的。編譯:
configure之后會(huì)有提示你接下來(lái)要輸入的兩條命令,如下所示。
source /home/runsisi/Desktop.home/VirtualBox-3.1.2_OSE/env.sh
kmk
第一條的路徑每個(gè)人都是不同的,你直接復(fù)制它給出來(lái)的就好了。
編譯內(nèi)核模塊:
進(jìn)入到源代碼的如下目錄下,進(jìn)行常規(guī)的編譯操作,至于sudo之類的命令我就不提了。
cd ./out/linux.ARCH/release/bin/src # ARCH depends on the architecture of your system
make
make install
加載模塊:
modprobe vboxdrv
創(chuàng)建vboxusers組,并將自己加入到該用戶組,將設(shè)備文件所屬的用戶組改為vboxusers。
groupadd vboxusers # Requires root.
usermod -a -G vboxusers USERNAME # USERNAME is your account username who should have accesses to VirtualBox,for example:usermod -a -G vboxusers runsisi
chown root:vboxusers /dev/vboxdrv
注銷并重新登錄,查看自己是否在vboxusers組下,可以使用groups命令或者查看/etc/group文件。
創(chuàng)建自動(dòng)加載腳本:
如下所示,保存為/etc/init.d/vbox,并確保該文件是可執(zhí)行的。
#!/bin/bash
### BEGIN INIT INFO
# Provides: vbox
# Required-Start: $syslog $local_fs
# Required-Stop: $syslog $local_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: The Virtual Box kernel module
# Description: The Virtual Box kernel module
### END INIT INFO
start () {
echo -n $"Starting Virtual Box: "
modprobe vboxdrv
sleep 1
[ -c /dev/vboxdrv ] && chown root.vboxusers /dev/vboxdrv && echo " OK"
[ ! -c /dev/vboxdrv ] && echo "Failed"
return 0
}
stop () {
echo -n $"Stopping Virtual Box: "
[ -c /dev/vboxdrv ] && rmmod vboxdrv && echo " OK"
[ ! -c /dev/vboxdrv ] && echo
return 0
}
restart() {
stop
start
}
case $1 in
start)
start
;;
stop)
stop
;;
restart)
restart
;;
status)
[ -c /dev/vboxdrv ] && echo "Virtual Box is loaded"
[ ! -c /dev/vboxdrv ] && echo "Virtual Box is not loaded"
;;
*)
echo $"Usage: vbox {start|stop|restart|status}"
exit 3
esac
exit 0
添加服務(wù):
chkconfig --add vbox
完成安裝,創(chuàng)建菜單:
將VirtualBox-3.1.2_OSE/out/linux.x86/release/目錄下的bin文件夾復(fù)制到/usr/local/目錄下,這個(gè)命名什么的基本上是無(wú)所謂的。
cp -prf bin /usr/local/VirtualBox
ln -s /usr/local/VirtualBox/VirtualBox /usr/local/bin/VirtualBox
創(chuàng)建菜單的方法kde和gnome是不同的,但都很簡(jiǎn)單,這里就不提了。
使用:
裝好系統(tǒng)后,不管是VMware還是Virtualbox都是需要裝驅(qū)動(dòng)的,也即GuestAdditions,這個(gè)我不知道,也不想知道如何編譯了,這個(gè)東西是需要windows下的編譯平臺(tái)的,因?yàn)槟闶且幾gwindows下使用的驅(qū)動(dòng),網(wǎng)上直接有現(xiàn)
成的編譯好了的下載,自己google吧。
給個(gè)地址:http://code.google.com/p/virtual-box-windows-guest-additions-installer/
下邊是該項(xiàng)目的介紹:
This project provides a packaged version of the Windows Guest Addition tools for VirtualBox OSE. This is provided so that users will not have to create a Windows build environment just to build the guest additions.
下面是我裝好后的截圖:


runsisi@HUST