使用 VirtualBox 自动挂载共享文件夹

使用 VirtualBox 自动挂载共享文件夹

我在使用 VirtualBox 的虚拟机上使用 Ubuntu 14.04。由于我经常需要在 Windows 和 Linux 上进行开发工作,所以我有一个共享的开发目录。问题是,即使在 VirtualBox 管理器中为虚拟机选择了自动挂载,它也不会在启动时自动挂载。

一旦我使用以下命令登录,我就可以完美地安装它:

sudo mount -t vboxsf src /home/patrick/src

这很简单,但对我来说似乎毫无意义。关于如何在启动/登录时自动安装它,有什么想法吗?

答案1

我刚刚在 KVM 中遇到了类似的事情,其中​​共享文件夹作为 9p 文件系统。

如果你不能使用/etc/fstab条目,解决方案是编辑客户操作系统/etc/rc.local并插入您的个人挂载命令(不带sudo!)在该exit 0行之前。

该文件通常如下所示:

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

mount -t vboxsf src /home/patrick/src

exit 0

确保您以 root 身份编辑该文件(例如使用sudo nanogksudo gedit)。

答案2

@ByteCommander +1 是一个非常干净的解决方案,但当用户想要在启动客户系统时挂载共享文件夹时网络不可用,因此在挂载命令之前添加 sleep 10。“NodeJs”是我的主机共享文件夹,“/var/www/html”是挂载点。

#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
sleep 20
mount -t vboxsf NodeJs /var/www/html
exit 0

相关内容