在 VirtualBox 中无法挂载共享文件夹时该怎么办?

大家好,
我是开发团队野生队的成员 Mandai。

VirtualBox共享文件夹非常方便,我觉得很有用。
但是,有时候我会突然无法挂载它,不知道该怎么办,所以最后只能用其他方式交换文件。

最近我终于找到了问题的原因,所以想把我的解决方法写下来

。开发游戏API时,生产环境通常是Linux,所以我用的是Windows机器,但我还是通过虚拟机来创建类似的环境。

至于虚拟机环境,我们使用 VirtualBox,虚拟机操作系统镜像一般为 CentOS。

 

从 Level 1 Guest Additions CD 重新安装工具

这是我首先想到的。

虽然这个问题有点老了,但正如文章《VirtualBox 共享文件夹备忘录 | dark_green 的日记 | Slad》,这个问题经常在使用 yum 等工具更新内核模块时出现。
由于这是一个虚拟机,我可以更随意地处理它吗?

在 VirtualBox 的“设备”菜单中选择“插入 CD 映像”,安装工具将自动启动。
如果 CD 已挂载到桌面,只需双击 CD 图标即可。

我知道在介绍这款产品之后说这话可能有点奇怪,但如果它能解决这个问题,我就不会那么担心了。

 

二级:重新配置共享文件夹

这是过去在问题显现时所采用的解决方案。

这可以在 VirtualBox 管理器的虚拟机设置中完成,
或者如果您在虚拟机用户界面中,请单击右下角的文件夹图标。

如果主机端和虚拟机端的目录都设置正确,则有可能挂载该目录。

 

第三级:替换 mount.vboxsf 符号链接

最后,这次奏效的解决方法是更改​​ mount.vboxsf 符号链接的目标位置。

实际情况是,mount.vboxsf 的实际实体(即用于创建共享文件夹的挂载命令)实际上有所不同。

哪个 mount.vboxsf /sbin/mount.vboxsf ls -al | grep vboxsf mount.vboxsf -> /usr/lib64/VBoxGuestAdditions/mount.vboxsf

这并不意味着该文件不存在;它确实存在于路径 /usr/lib64/VBoxGuestAdditions/mount.vboxsf 中。

那么,应对这种情况的办法是:

# cd /sbin sudo ln -sf /usr/lib/VBoxGuestAdditions/mount.vboxsf mount.vboxsf

只需将符号链接的目标位置更改为 VBoxGuestAdditions 下的 mount.vboxsf,该 VBoxGuestAdditions 也位于 /usr/lib 下。

如果设置为自动挂载,请重启虚拟机,然后使用 df 命令可以看到它已正确挂载。

由于我使用的是 64 位版本的 CentOS,我原以为 /usr/lib64 应该没问题,但似乎并非如此。
我怀疑这可能是 Guest Additions CD 安装程序的问题,Oracle,您怎么看?

这似乎是在我更新内核模块之后发生的。

更新虚拟机内核似乎在很多方面都存在风险。

就这样。

如果您觉得这篇文章有用,请点击【点赞】!
3
加载中...
3票,平均分:1.00/13
30,394
X Facebook Hatena书签 口袋

这篇文章的作者

关于作者

万代洋一

我的主要工作是开发社交游戏的Web API,但我也很荣幸能够从事其他各种工作,包括市场营销。
我在Beyond中的肖像权采用CC0协议。