Virtualbox:从主机 Ubuntu 在来宾 FreeBSD 中挂载共享文件夹

9 freebsd ubuntu virtualbox

我在 Virtualbox 4.1.18 中使用 Ubuntu 12.10 作为主机操作系统和 FreeBSD 9 作为来宾操作系统。我在 Ubuntu 和 FreeBSD 中都安装了 Samba,并从 virtualbox 共享了一些文件夹,也勾选了该automount选项。

我也在right click and shareUbuntu 上做过。但是当我尝试在 FreeBSD 中安装时使用

mount -t vboxfs sharedfolder /home/user/shared`
Run Code Online (Sandbox Code Playgroud)

它说sharedfolder不允许操作。我也用过

mount_smbfs //10.0.0.2/sharedfolder /home/user/shared
Run Code Online (Sandbox Code Playgroud)

但我明白了 can't get server address

如何从 virtualbox 在 Host Ubuntu 和 Guest FreeBSD 之间共享文件夹/文件?

Ale*_*eev 10

正如在另一个话题中指出的那样,

尚不支持 FreeBSD 来宾的共享文件夹 [...] 有一些草稿代码和内核模块,但它尚未工作。

这是截至 2014 年 6 月 24 日的数据。


Huy*_*ens 4

桑巴舞

可以使用 samba 挂载共享 FreeBSD 文件夹或共享 Ubuntu 文件夹。两种方法都有效。无论哪种情况,您都需要配置一个共享文件夹(您提到您使用 Ubuntu GUI 来执行此操作),然后在另一台计算机上您需要使用正确的 IP 挂载共享,并确保来宾和主机位于同一台计算机上网络或使用端口转发(如果您配置了 NAT)。

因为解决方案太多,我就不一一列举了。您能否提供有关您的来宾操作系统网络配置的更多信息?创建虚拟机时使用了哪些设置?您使用 NAT、桥接、仅主机还是内部网络?我将为您提供一个示例,假设您的访客能够在网络上查看您的主机(例如,您有一张网卡定义为仅限主机)。

首先像您一样在 Ubuntu 上共享一个网络文件夹。确保在 Ubuntu 主机上的 Samba 中创建一个用户帐户,或者可以进行访客访问(例如,sudo smbpasswd -a <username>要授予用户访问权限,请替换为用户名)。

然后在 FreeBSD 上,使用正确的 IP 地址挂载 Ubuntu 共享(10.0.0.2 可能是 VirtualBox 创建的 NAT“路由器”的地址,因此它可能无法工作),例如,可以使用 Ubuntu IP 地址您的 LAN(例如 192.168.1.x)或为仅主机接口定义的 LAN。然后你的mount_smbfs命令就会成功:

mount_smbfs -U <username> //<correct IP>/sharedfolder /home/user/shared
Run Code Online (Sandbox Code Playgroud)

vboxsf

当 vboxsf 得到 FreeBSD 支持时(感谢Alexander指出这一点),并且如果您想使用 VirtualBox 内置共享机制vboxsf,您需要在 Guest OS 中安装Guest Additions (在您的情况下是一些 FreeBSD)。通常这是通过Devices下的 VirtualBox 菜单完成的,有一个Install Guest Additions...的快捷方式。

然而,对于 FreeBSD,你必须采取不同的做法。他们有专门的文档:

安装 Guest Additions 后,您可以mountvboxsf文件系统使用该命令。但是,您需要使用 VirtualBox 共享文件夹机制来共享文件夹,请参阅 VirtualBox 的“设备”菜单下的“共享文件夹...”项。请注意,您在此菜单中为共享指定的名称将是您为安装指定的“设备”的名称。