介紹如何在VirtualBox下的Linux掛載宿主機文件夾,實現虛擬機與宿主機之間的文件共享。
環(huán)境:Oracle VM Virtualbox 4.0.10 + CentOS 6.0
1、在CentOS下安裝VirtualBox Guest Addition
在當前虛擬機界面點擊"設備" - "分配光驅" - "Choose a virtual CS/DVD..."
打開VirtualBox的安裝文件夾,默認為"C:\Program Files\Oracle\VirtualBox",選擇"VBoxGuestAdditions.iso"進行掛載

打開CentOS超級終端,輸入以下命令安裝VirtualBox Guest Addition
[root@Slyar ~]# mount /dev/cdrom /mnt
mount: block device /dev/sr0 is write-protected, mounting read-only
[root@Slyar ~]# /mnt/VBoxLinuxAdditions.run
第一條是掛載光盤到/mnt,第二條安裝,等待安裝完成即可。(如果你跟我一樣是沒有X桌面的,那么最后一條可能會Failed,沒有影響)
2、配置數據空間
在當前虛擬機界面點擊"設備" - "分配數據空間",彈出界面,添加一個臨時分配(固定分配也行,沒所謂)
"數據空間位置"就是你的共享文件夾,數據空間名稱自己記好,隨便起,"只讀分配"和"Auto-mount"不要勾選

3、重啟操作系統(tǒng)
[root@Slyar ~]# reboot
4、掛載共享數據空間
啟動系統(tǒng)后可以使用以下命令掛載數據空間(假設數據空間名稱為slyar)到 /mnt 下,其中"-w"為可寫,如果要只讀可以改為"-r"
[root@Slyar ~]# mount.vboxsf -w slyar /mnt
5、意外情況
如果出現意外情況無法掛載,也可以直接進入以下目錄使用共享空間
/p>
p>[root@Slyar ~]# cd /media
[root@Slyar media]# ls -l/p>
p>
總用量 0
drwxrwx--- 1 root vboxsf 0 7月 15 15:13 sf_SLYAR
其中"sf_SLYAR"就是共享數據空間文件夾。
也可以試一下重新掛載vboxsf模塊:
[root@Slyar ~]# modprobe vboxvsf
PS:解決VirtualBox下CentOS啟動時"MBus base address uninitialized"錯誤
今天在VirtualBox下啟動CentOS 5.5/CentOS 5.6/CentOS 6.0時均會出現以下錯誤
piix4_smbus 0000:00:07.0: SMBus base address uninitialized - upgrade BIOS or use force_addr=0xaddr
這個錯誤不會影響啟動,但每次重啟都有那么一條錯誤就是看著礙眼,查了一下資料發(fā)現原因:
CentOS在啟動時要加載smbus模塊組,但是這個模塊組在VirtualBox中并不存在,于是就出錯了。
沒想到好的解決辦法,直接拉黑名單算了:)
1、檢查一下i2c_piix4模塊是否存在(一般正常安裝都是已經加載的,確認一下比較好)
[root@localhost ~]# lsmod | grep i2c_piix4
i2c_piix4 11098 0
i2c_core 25799 1 i2c_piix4
2、編輯黑名單文件...
[root@localhost ~]# vim /etc/modprobe.d/blacklist.conf
3、將下面的語句加入黑名單的最后一行,:wq保存退出
blacklist i2c_piix4
4、reboot重啟系統(tǒng),那行錯誤就不見了...