乐者为王

Do one thing, and do it well.

VirtualBox虚拟Ubuntu 8.10时共享文件夹的使用

我的环境:主机操作系统是Windows Server 2008,虚拟机操作系统是Ubuntu 8.10,虚拟机是VirtualBox 2.0.4。

安装增强功能包(Guest Additions)

安装好Ubuntu 8.10后,运行Ubuntu并登录。然后在VirtualBox的菜单里选择“Devices” -> “Install Guest Additions”。如图所示:

你会发现在Ubuntu桌面上多出一个光盘图标,这张光盘默认被自动加载到了文件夹/media/cdrom0。在命令行下输入:

1
2
cd /media/cdrom0
sudo ./VboxLinuxAdditions.run

开始安装工具包。安装完毕后会提示要重启Ubuntu。

设置共享文件夹

重启完成后点击“Devices” -> “Shared Folders”菜单,添加一个共享文件夹,选项“Make Permanent”是指该文件夹是否是持久的。共享名可以任取一个自己喜欢的,比如“flamingo”,尽量使用英文名称。

挂载共享文件夹

重新进入虚拟Ubuntu,打开命令行窗口输入:

1
2
sudo mkdir /mnt/shared
sudo mount -t vboxsf flamingo /mnt/shared

其中“flamingo”是之前创建的共享文件夹的名字。现在Ubuntu和主机可以分享文件了。

假如你不想每一次都手动挂载,可以在/etc/fstab中添加一项:

1
flamingo /mnt/shared vboxsf defaults 0 0

这样每次系统启动时就能够自动挂载了。

需要注意的是,共享文件夹的名称千万不要和挂载点的名称相同。比如,上面的挂载点是/mnt/shared,如果共享文件夹的名字也是shared的话,在挂载的时候就会出现如下的错误信息(看 http://www.virtualbox.org/ticket/2265 ):

1
/sbin/mount.vboxsf: mounting failed with the error: Protocol error

原因分析可以看Tips on running Sun Virtualbox的Shared Folder on a Linux Guest节。

卸载的话使用下面的命令:

1
sudo umount -f /mnt/shared

2017/7/11更新

在设置共享文件夹时,如果勾选了“Auto-mount”,那么Ubuntu会自动在/media里建立以“sf_”为前缀并加上共享名的挂载点。不过因为这个挂载点默认的权限是给vbox创建的用户组“vboxsf”的,所以你会无法查看,可以修改/etc/group,把自己的用户名加到“vboxsf”组解决。并且,在这种情况下你通过手动修改/etc/fstab以实现自动挂载会失败。所以,若想通过修改/etc/fstab实现自动挂载,在设置共享文件夹时就不能勾选“Auto-mount”。

Comments