Vagrant无法装载VirtualBox共享文件夹

Vagrant无法装载VirtualBox共享文件夹,vagrant,virtualbox,vagrant-plugin,Vagrant,Virtualbox,Vagrant Plugin,当前设置:Virtualbox 5.1.20与Vagrant 1.9.3 以前的工作设置:Virtualbox 5.1.18与Vagrant 1.9.3 我安装了最新版本的Virtualbox,并尝试启动我的VM。文件夹装载已停止工作。相同的文件夹安装在Virtualbox 5.1.18中可以正常工作。我收到以下错误消息: Vagrant无法装载VirtualBox共享文件夹。这通常是因为文件系统“vboxsf”不可用。该文件系统通过VirtualBox来宾添加和内核模块提供。请验证这些来宾添加

当前设置:Virtualbox 5.1.20Vagrant 1.9.3

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

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

Vagrant无法装载VirtualBox共享文件夹。这通常是因为文件系统“vboxsf”不可用。该文件系统通过VirtualBox来宾添加和内核模块提供。请验证这些来宾添加项是否已正确安装在来宾中。这不是“流浪者”中的错误,通常是由有故障的“流浪者”盒引起的。对于上下文,尝试的命令是:

 mount -t vboxsf -o uid=1000,gid=1000 keys /keys 
命令的错误输出为:

mount: wrong fs type, bad option, bad superblock on keys,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try dmesg | tail or so.
我尝试过手动安装
vagrant-vbguest
插件(通过
vagrant-plugin-install-vagrant-vbguest
),但没有解决任何问题。降级回5.1.18确实解决了这个问题,但这并不理想


如何使用Virtualbox 5.1.20和Vagrant 1.9.3安装文件夹?

更新

已在VirtualBox 5.1.22中修复

()

原始答案

在我的例子中,虚拟机中的符号链接是错误的。 登录到虚拟机:

$ vagrant ssh
然后:

这个链接断了。当您查看/opt/vboxguestaditions-5.1.20/内部时,会发现子文件夹“other”不存在。 这行代码修复了以下问题:

$ sudo ln -sf /opt/VBoxGuestAdditions-*/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf
现在注销虚拟机:

$ exit
并检查它是否适合您:

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

如果链接/sbin/mount.vboxsf首先不存在,则无法安装VBoxGuestAdditions。如果您在更新VirtualBox后未下载匹配的VirtualBox扩展包(v5.2.18及更高版本应在VirtualBox更新期间自动下载),则可能会发生这种情况。您现在可以这样做:

  • 停止所有正在运行的虚拟机
  • 打开VirtualBox程序
  • 开始下载VirtualBox扩展包并安装它
  • 如果没有人询问您是否要下载VirtualBox扩展包,请打开->文件->检查更新,以触发下载对话框
如果VirtualBox扩展没有更新,则可能无法安装VBoxGuestAdditions,因为安装程序会显示一条消息,而vagrant插件vbguest无法提示回答(此)。您可以在“Wagrant up”的输出中看到这一点。应该有一条类似于此的线:

Do you wish to continue? [yes or no]
如果是这种情况,您可以手动运行安装程序。要执行此操作,请启动该框:

$ vagrant up
然后触发vbguest以再次尝试安装,但随后保留已安装的VBoxGuestAdditions ISO:

$ vagrant vbguest --do install --no-cleanup
登录到该框:

$ vagrant ssh
手动运行安装程序:

$ sudo /mnt/VBoxLinuxAdditions.run
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
最后的希望:DIY

如果上述各项都不起作用,请尝试手动安装来宾添加:

$ sudo /mnt/VBoxLinuxAdditions.run
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

从homestead中删除类型:“nfs”。yaml为我修复了它。赢10分,流浪汉1.9.7分,拉拉维尔5.4分,家园

对我来说,以下命令和来宾系统的重新启动有帮助:

cd /opt/VBoxGuestAdditions-*/init  
sudo ./vboxadd setup

我找到了解决办法。参考本文,您需要在触发命令之前停止vboxadd(因为我不知道vboxadd是什么,所以我没有这样做)。

安装vbguest插件在我使用VirtualBox 5.2.6和Vagrant 2.0.1时起到了作用:


vagrant插件安装vagrant vbguest

这对我很有用。。。运行以下命令:

vagrant plugin repair
然后

然后


对于那些来到这里和我有着几乎相同问题的人,下面是解决办法

太长,读不下去了
  • VirtualBox来宾失败,因为系统当前未设置为构建内核模块
  • 解决方案是卸载kernel-headers.x86_64 0:3.10.0-862.9.1.el7
  • 然后安装
    kernel-devel-3.10.0-327.el7.x86_64
解决方案
  • vagrant ssh

  • sudo rpm-e kernel-devel-3.10.0-862.9.1.el7.x86_64

  • sudo wgetftp://mirror.switch.ch/pool/4/mirror/scientificlinux/7.0/x86_64/updates/security/kernel-devel-3.10.0-327.el7.x86_64.rpm
    //下载该文件

  • sudo rpm-Uvh kernel-devel-3.10.0-327.el7.x86_64.rpm
    //使用步骤3下载的文件

  • 退出

  • vagrant reload

  • 细节:问题
  • 执行向上游荡,但失败时出现类似错误,除了
  • 命令的错误输出为:

    mount: wrong fs type, bad option, bad superblock on keys,
    missing codepage or helper program, or other error
    In some cases useful info is found in syslog - try dmesg | tail or so.
    
    /sbin/mount.vboxsf:装载失败,错误为:没有此类设备

  • 进一步阅读日志,我注意到下面的关键词
  • 安装Virtualbox Guest Additions 5.2.16-Guest版本为5.1.10

    安装VirtualBox来宾添加时出错

    该系统当前未设置为构建内核模块

    请安装与当前内核匹配的Linux内核“头”文件

    包含标题的包可能是:kernel-devel-kernel-devel-3.10.0-327.el7.x86_64

  • 进一步阅读日志
  • 将安装程序包kernel-headers.x86_64 0:3.10.0-862.9.1.el7

    没有可用的kernel-devel-3.10.0-327.el7.x86_64包

  • 我的客人是我需要
    kernel-devel-3.10.0-327.el7.x86_64
    才能工作
  • 详细信息:我的环境
    • 便当/centos-7.2
    • 流浪版本:2.0.4
    • 虚拟盒版本:5.2.16
    来源

    对于我来说,问题是在以下条件下修复的:

    环境:

    • VirtualBox版本6.0.4r128413
    • 流浪者版本2.2.3
    步骤:

    去你的项目
    vagrant ssh
    sudo yum -y install kernel-devel
    sudo yum update -y
    exit
    vagrant halt
    vagrant up --provision
    
    vagrant plugin install vagrant-winnfsd
    
    vagrant plugin install vagrant-vbguest
    
    vagrant vbguest --status
    
    sudo apt-get install virtualbox-guest-x11
    
    vagrant vbguest --do install
    
    vagrant reload
    
    vagrant vbguest --status
    
     vagrant vbguest --do install --no-cleanup