VirtualBox 共享文件夹设置及开机自动挂载详细教程

时间:2021-05-19

鉴于支付宝等服务无视我们Linux用户的存在,没办法,那只好在Linux上用VirtualBox虚拟一个Windows系统了。系统装好了,在日常使用过程中,往往要从VirtualBox的客户机(guest system)中使用主机(host system)里面的文件,那么通过共享文件夹的方式可以达成此目的。

我在这里写了个图文教程,说明设置过程,希望对大家有所帮助。(注:我的主机是Ubuntu Linux 8.04,客户机是Windows XP,VirtualBox版本2.2.4【下载】)

在VirtualBox中安装好Windows XP后,先要安装工具包VBoxGuestAdditions.iso,这个映像文件位于VirtualBox的安装目录下,我的是在/usr/share/virtualbox目录下。在VirtualBox控制面板中点击"设置",接着选"光驱",加载映像。启动虚拟机进入XP后,安装辅助工具包。

接下来就是设置共享目录了。在VirtualBox先选择你的虚拟系统,接着"设置",选"数据空间",点击那个加号按钮,如下图:
出现添加数据空间的窗口,在"数据空间位置"下拉框中点击"其它",选择你要共享的文件夹,"数据空间名称"中填你自己起的名字,这里我填的是tmp,只读选项根据自身情况选择,配置好后,如下图:
接着启动进入客户机Windows XP,打开"我的电脑",依次点击菜单栏"工具"-"映射网络驱动器",驱动器盘符自选,文件夹填"\\vboxsvr\tmp",tmp是我之前设置的"数据空间名称",把tmp改成你刚才设置的"数据空间名称"即可,如下图:
确定后,在"网络驱动器"那里就可以看到共享文件夹的盘标了,如下图:
好了,现在双击"网络驱动器"中的那个图标,即可读取、修改linux主机中的文件了

遇到的问题:

直接在XP共享文件夹中使用应用程序打开文件,修改后不能直接保存,如用Photoshop打开某图片并修改后,ctrl+s不能保存,提示该文件已经被锁定。

解决办法:
把共享文件夹中的文件复制到Windows XP的本地磁盘中,修改完成后,再复制回共享文件夹。

另一篇:如何使用VirtualBox的共享文件夹

(Windows XP SP2作host,Red Hat 9.0为guest)

在Windows上的VirtualBox中装好Redhat9虚拟机之后,box就想让两个系统交换文件。交换文件有多种方法,其中最简单的一种是使用共享文件夹。

首先,在Windows上运行VirtualBox。如图,选择“Red Hat 9.0”,再选“共享文件夹”。
点击“共享文件夹”,会弹出“Red Hat 9.0设置”对话框。此时可以添加一个新的共享文件夹。box在E盘有一个名为sharing的目录,就用它了。注意,图中的文件夹名称 “sharing”又称为共享名称(sharename)。在Redhat9挂载共享文件夹的时候会用到它。

确定之后,可以看到共享文件夹的数目变成了1。

主人准备好了,客人Redhat9要享受“共享文件夹”先得安装辅助工具包。这个辅助工具包是一个名为VBoxGuestAdditions.iso的映像文件,位于VirtualBox的安装目录下。点击“光驱”,加载映像。

启动虚拟机,安装辅助工具包。由于box安装的虚拟机没有图形界面,所以安装辅助工具包的时候带了vfs-module参数。

  • mount /dev/cdrom 挂载光驱
  • cd /mnt/cdrom 进入光盘
  • sh ./VBoxLinuxAdditions.run vfs-module 这里没有完全安装
  • reboot 安装成功后需要重启系统

重启之后,Redhat9就可以访问Windows提供的共享文件夹了。

  • mkdir /mnt/share 新建挂载点(mountpoint)- 注:这个挂载点也可放在 /home/*** 目录下
  • mount -t vboxsf sharing /mnt/share 挂载共享文件夹
  • cd /mnt/share 进入共享文件夹
  • ls 看看有什么

OK,大功告成。

注意:

1.若想删除挂载,可执行命令

umount -f /mnt/share

2.若想开机自动挂载,可以在 /etc/fstab 文件末添加一项

sharing /mnt/share vboxsf defaults 0 0


sharing /mnt/share vboxsf rw,gid=100,uid=1000,auto 0 0

3.为了方便,可以在桌面上新建一个文件,内容为:

#!/bin/sh sudo mount -t vboxsf sharing /mnt/share

实战经验:

以上资料是从网上摘录的,对于“开机自动挂载”模块,我试了好多遍都以失败告终,大部分网络资料都是说在 /etc/fstab 文件中追加 VirtualBox虚拟机文件夹共享挂载命令 “ sharing /mnt/share vboxsf defaults 0 0 ”,其实是错误的,因为系统调用fstab的时候,Virtualbox的共享目录的模块还没有加载,所以每次加载都会失败,最终的解决方案如下:

在文件 /etc/rc.local 中(用root用户)追加如下命令

mount -t vboxsf sharing /mnt/share

最后重启系统,大功告成!!!

另外,在 VirtualBox 4.x 版本中,已有一个“自动挂载”功能,如下图所示:

再使用命令 mount ,得如下挂载信息:

[jianbao@localhost ~]$ mount/dev/sda1 on / type ext3 (rw)proc on /proc type proc (rw)sysfs on /sys type sysfs (rw)devpts on /dev/pts type devpts (rw,gid=5,mode=620)tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")/dev/sda2 on /home type ext3 (rw)sharing on /mnt/share type vboxsf (uid=1000,gid=100,rw)none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw)htdocs on /media/sf_htdocs type vboxsf (gid=501,rw)sharing on /media/sf_sharing type vboxsf (gid=501,rw)

它自动把这些共享文件夹挂载到 /media/ ,目录下了,我想要说的是,这个挂载目录不是我想要的,

所以我没采用VirtualBox的自动挂载功能(因为挂载目录自己不可控)。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章