对于 VMWare、Virtual PC 这些虚拟机软件,可能大家都比较熟悉。VirtualBox 是德国一家软件公司 InnoTek 所开发的虚拟系统软件,它不仅具有丰富的特色,而且性能也很优异。更是开源的,成为了一个发布在 GPL 许可之下的自由软件。VirtualBox 可以在 Linux 和 Windows 主机中运行,并支持在其中安装 Windows (NT 4.0、2000、XP、Server 2003、Vista)、DOS/Windows 3.x、Linux (2.4 和 2.6)、OpenBSD 等系列的客户操作系统。假如你曾经有用过虚拟机软件的经历的话,相信使用 VirtualBox 不在话下。即便你是一个新手,也没有关系。VirtualBox 提供了详细的文档,可以助你在短期内入门。
之前一直在 Win2003 下使用 VMWare 虚拟机软件,并在其上面安装 CentOS 4.6、5.1 系统,结果一直被 VMWare 里面的工具包安装(主要是要解决里面的 guest OS 和 host OS 之间的时间同步问题)所困扰,可一直都没有成功。今日在网上看到很多人都介绍 VirtualBox 这个虚拟软件,很不错。而且是开源的。于是就安装了一个在 XP SP2 系统上作试验。结果很满意。时间同步问题很简单的就解决了。
在 VirtualBox 上安装 CentOS 或其他系统的步骤方式就不在这说明了,有兴趣的朋友可以到网上搜索下。很多资料可供参考。(其实很简单的。真的。我觉得比 VMWare 简单多了。)在这,只介绍如何使用 VirtualBox 的共享文件夹。
================================================================(Windows XP SP2 作 host,CentOS 4.6 为 guest )在Windows 上的 VirtualBox 中装好 CentOS 4.6 虚拟机之后,就想让两个系统交换文件。交换文件有多种方法,其中最简单的一种是使用共享文件夹。首先,在 Windows 上运行 VirtualBox。如图,选择“CentOS 4.6 ” 再选 “共享文件夹”。
点击“共享文件夹”,会弹出“ CentOS 4.6 设置 ”对话框。此时可以添加一个新的共享文件夹。在这我们就用系统的 E 盘来作为共享文件夹目录。注意,图中的文件夹名称 “
E-DRIVE” 又称为共享名称(sharename)(
注意:该名字要与Windows中要共享的原文件夹的名字不同)。在 CentOS 4.6 挂载共享文件夹的时候会用到它。
确定之后,可以看到共享文件夹的数目变成了 1。
VirtualBox 准备好了,CentOS 4.6 就可享受“共享文件夹”,不过得先安装辅助工具包。这个辅助工具包是一个名为VBoxGuestAdditions.iso 的映像文件,位于 VirtualBox 的安装目录下。点击“光驱”,加载映像。启动虚拟机,安装辅助工具包。由于 VirtualBox 安装的虚拟机没有图形界面,所以安装辅助工具包的时候带了 vfs-module 参数。(
注:按照增强功能包后会自动在虚拟的linux桌面上出现光盘,其文件夹目录一般在/media文件夹里面。如果是重新在VirtualBox上重新安装系统,那么在桌面上可能不会出现光盘,而且/media下面也可能没有光盘的文件,这时可以进入到X Windows桌面,进入根文件夹,应该会有一个光驱的盘符,双击后即可激活,就可以在media文件夹下面看到光盘了)
# mount /dev/cdrom 挂载光驱
(注:上面命令我在RedHat9中运行正确,但是在CentOS中运行不对,于是在CentOS中需要先# mkdir /dev/cdrom,新建一个cdrom文件夹,然后找到光盘所在的文件夹,一般是在根目录下media文件夹,然后把里面的VBOXADDITIONS复制到/dev/cdrom文件夹中,再做下面步骤。)
# cd /mnt/cdrom 进入光盘
# sh ./VBoxLinuxAdditions.run vfs-module 这里没有完全安装(注:run前面的文件名要具体根据文件夹里面的实际的名字书写)
# reboot 安装成功后需要重启系统
重启之后,CentOS 4.6 就可以访问 Windows 提供的共享文件夹了。
# mkdir /mnt/share 新建挂载点(mountpoint)
# mount -t vboxsf E-DRIVE /mnt/share 挂载共享文件夹 (这里的E-DRIVE的名字就是在上面图片中定义的名字,注意该名字要与在Windows中原文件夹的名字不同)
# cd /mnt/share 进入共享文件夹
# ls 看看有什么
OK,大功告成!!!
假如不想每一次都手动挂载,可以在/etc/fstab中添加一项
E-DRIVE /mnt/share vboxsf rw,gid=100,uid=1000,auto 0 0
这样就能够自动挂载了。
卸载的话使用下面的命令:
sudo umount -f /mnt/share
注意:
共享文件夹的名称千万不要和挂载点的名称相同。比如,上面的挂载点是/mnt/share,如果共享文件夹的名字也是share的话,在挂载的时候就会出现如下的错误信息(看http://www.virtualbox.org/ticket/2265):
/sbin/mount.vboxsf: mounting failed with the error: Protocol error
原因分析可以看Tips on running Sun Virtualbox的Shared Folder on a Linux Guest节。
注:本文可以与本博客中其他几篇关于共享得文章对照着看,不过本文应该更详细一些。
文章评论(0条评论)
登录后参与讨论