我搜索了一些教程和帖子 -如何在 Virtual Box 中自动挂载共享文件夹(使用版本 5.0.24) 用于 Debian (使用版本 8.0)。我认为 Ubuntu 的流程是一样的。
我已经设置了 fstab 并添加了vboxsf
模块,但文件夹仍然没有共享,或者我仍然收到错误。我还考虑使用rc.本地方式,但这不是正确的方法在系统启动时设置自动共享文件夹。
在此之后,我决定就这个问题写下自己的答案——如何让共享文件夹在系统启动时自动挂载?
答案1
主机设置
首先确保你已经安装了 Guest Additions在您的虚拟机上。如果您没有看到这. 转到 Virtual Box(您的虚拟机)并单击“设置”。
在主机内创建一个文件夹(使用 Windows 7)或选择一个文件夹。记住文件夹名称我们将在客户机(Debian / Ubuntu)中设置共享文件夹时使用它。
1. 使用 VBox 自动挂载
等待!自动挂载?
我在那里看到了“自动安装”选项!此选项将使您的共享文件夹在客户机启动时自动安装。这就是我们想要的!但。
检查自动挂载将安装你的共享文件夹放入/media/<your folder name>
您的客人中。
提示:df
在控制台中输入命令来查看共享文件夹安装在哪里。
如果你对这种方式完全满意。你就大功告成了。你不必再读这篇文章了。
2. 自动挂载到自定义位置
将共享文件夹挂载到风俗位置。例如 Apache 或 nginx Web 服务器的 www 文件夹等。
请务必记住在 VBox 设置中禁用自动安装选项。不要忘记。
启动虚拟机。记得创建文件夹在安装之前在客人处。
将 mount 命令添加到 rc.local 可能会导致问题。最好不要这样做。改用 fstab。
添加模块
转到sudo nano /etc/modules
并将其添加到文件末尾
vboxsf
vboxvfs
vboxadd
将命令添加到 fstab
转到sudo nano /etc/fstab
并将此行添加到文件末尾<your folder name> <your custom path to the folder> vboxsf default 0 0
现在你可以重新启动虚拟机查看变化。
如果您有任何建议,请发表评论或编辑我的答案!
答案2
要使用 vboxsf 文件系统挂载共享文件夹,我们首先需要确保满足以下一些先决条件:
#1 新增嘉宾
在某些版本的 Ubuntu 安装过程中,可能已经安装了该程序。您可以通过以下链接进行检查: https://askubuntu.com/questions/169024/how-can-i-tell-if-the-virtualbox-guest-additions-were-installed-on-an-ubuntu-vm
注意共享文件夹的名称取决于上图里面的关键参数,我选择名称为“Public”。
图中主机文件夹为 /tmp。但这可能不是一个好主意,因为系统在关机时会自动删除此文件夹。熟悉此处显示的所有步骤后,您应该选择另一个文件夹。
#3 在虚拟机的主目录中创建一个共享文件夹
$ mkdir ~/shared
这作为挂载点。
最好选择主文件夹中的挂载点。这是针对较新版本的 Linux 的解决方案(在这种情况下 /media/sf_Public 挂载点不起作用)。
#3 配置 fstab
在我们的 /etc/fstab 文件中放入以下行:
name_of_share /path/to/mountpoint vboxsf defaults 0 0
用您的个人设置替换 name_of_share 和 /path/to/mountpoint:
name_of_share:公共(如果您使用了上图所示的名称)
/path/to/mountpoint:上一步创建的挂载点的文件夹。
现在重新启动虚拟机。
故障排除
- 请记住,您需要成为 vboxsf 组的成员。
- 如果您使用的是最新版本的 Virtual Box,您可能已经自动完成了所有这些步骤。如果是这样的话,这个共享文件夹将被挂载到来宾目录 /media//sf_<name_of_share>,所有成为 vboxsf 组成员的用户都可以访问该目录。
重要提示:如果其他方法都失败了,你可以尝试下面的链接
https://askubuntu.com/questions/252853/how-to-mount-a-virtualbox-shared-folder-at-startup