首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >流浪者无法挂载VirtualBox共享文件夹

流浪者无法挂载VirtualBox共享文件夹
EN

Stack Overflow用户
提问于 2017-04-19 09:56:28
回答 11查看 89.7K关注 0票数 106

当前设置:Virtualbox 5.1.20Vagrant 1.9.3

以前的工作设置:Virtualbox 5.1.18Vagrant 1.9.3

我安装了Virtualbox的最新版本,并尝试启动VM。文件夹安装已停止工作。在Virtualbox 5.1.18中,相同的文件夹安装工作正常。我收到以下错误消息:

流浪者无法挂载VirtualBox共享文件夹。这通常是因为文件系统"vboxsf“不可用。该文件系统通过VirtualBox来宾添加和内核模块提供。请验证这些客户添加是否正确地安装在来宾中。这不是Vagrant中的一个bug,通常是由故障Vagrant引起的。在上下文中,尝试的命令是: -t vboxsf -o uid=1000 gid=1000 keys /keys 该命令的错误输出是: 挂载:错误的fs类型,糟糕的选项,键上的坏超级块,缺少代码页或助手程序,或者在某些情况下,有用的信息可以在syslog中找到--试试dmesg \ tail之类的。

我已经尝试过手动安装vagrant-vbguest插件(通过vagrant plugin install vagrant-vbguest),但是没有解决任何问题。将评级下调至5.1.18确实解决了这一问题,但这并不理想。

如何使用Virtualbox 5.1.20Vagrant1.9.3安装文件夹

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2017-04-19 13:38:42

更新

修正为VirtualBox 5.1.22。

(https://www.virtualbox.org/ticket/16670)

原始答案

在我的例子中,VM内部的一个符号链接是错误的。登录到VM:

代码语言:javascript
运行
复制
$ vagrant ssh

然后:

代码语言:javascript
运行
复制
$ ls -lh /sbin/mount.vboxsf 
lrwxrwxrwx 1 root root 49 Apr 19 14:05 /sbin/mount.vboxsf -> /opt/VBoxGuestAdditions-5.1.20/other/mount.vboxsf

这个链接断了。当您查看/opt/VBoxGuestActions-5.1.20/时,您会发现子文件夹"other“不存在。这一行修正如下:

代码语言:javascript
运行
复制
$ sudo ln -sf /opt/VBoxGuestAdditions-*/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf

现在退出VM:

代码语言:javascript
运行
复制
$ exit

看看它是否对你有用:

代码语言:javascript
运行
复制
$ vagrant reload

,但我无法修复链接,因为/sbin/mount.vboxsf不存在于我的框中!

如果链接/sbin/mount.vboxsf一开始不存在,则无法安装VBoxGuestAdditions。如果在更新VirtualBox之后没有下载匹配的VirtualBox扩展包(v5.2.18和更高版本应该在Virtualbox更新期间自动下载),就会发生这种情况。你现在可以这么做了:

  • 停止所有正在运行的VM。
  • 打开VirtualBox程序。
  • 启动VirtualBox扩展包的下载并安装它。
  • 如果没有人问您是否要下载VirtualBox扩展包,请打开->File ->Check for Update,以触发下载对话框。

如果VirtualBox扩展没有更新,那么就可能无法安装VBoxGuestAdditions,因为安装程序显示了一条消息,而迷航插件vb来宾无法提示答案(这个在vb来宾v0.15.0中是“固定”的)。你可以在“流浪汉”的输出中看到这一点。应该有一条类似于这一条的线:

代码语言:javascript
运行
复制
Do you wish to continue? [yes or no]

如果是这样,您可以手动运行安装程序。要做到这一点,请启动框:

代码语言:javascript
运行
复制
$ vagrant up

然后触发vb来宾再次尝试安装,但在安装后保持VBoxGuestAdditions ISO:

代码语言:javascript
运行
复制
$ vagrant vbguest --do install --no-cleanup

登录到方框:

代码语言:javascript
运行
复制
$ vagrant ssh

手动运行安装程序:

代码语言:javascript
运行
复制
$ sudo /mnt/VBoxLinuxAdditions.run

最后的希望: DIY!

如果上述任何操作都没有奏效,请尝试手动安装来宾添加:

代码语言:javascript
运行
复制
cd /opt
sudo wget -c http://download.virtualbox.org/virtualbox/5.1.28/VBoxGuestAdditions_5.1.28.iso -O VBoxGuestAdditions_5.1.28.iso
sudo mount VBoxGuestAdditions_5.1.28.iso -o loop /mnt
sudo sh /mnt/VBoxLinuxAdditions.run
票数 156
EN

Stack Overflow用户

发布于 2018-02-01 18:01:56

在我的例子中,安装vb来宾插件可以使用VirtualBox 5.2.6和Vagrant2.0.1:

vagrant plugin install vagrant-vbguest

票数 80
EN

Stack Overflow用户

发布于 2019-03-05 11:06:25

对我来说,这个问题是在下列条件下解决的:

环境:

  • VirtualBox版本6.0.4r128413
  • 迷途版本2.2.3

步骤:

从终端或命令行(cd)转到您的项目目录,并运行以下命令:

  1. vagrant plugin install vagrant-vbguest安装Vagrant
  2. vagrant up

如果您收到一个关于vboxsf不可用的错误。然后,您的VirtualBox客户添加可能没有正确安装。希望下面的命令能够解决您的问题。

代码语言:javascript
运行
复制
vagrant ssh
sudo yum -y install kernel-devel
sudo yum update -y
exit
vagrant halt
vagrant up --provision
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43492322

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档