首页 文章

Vagrant无法挂载VirtualBox共享文件夹

提问于
浏览
61

当前设置: Virtualbox 5.1.20 with Vagrant 1.9.3

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

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

Vagrant无法挂载VirtualBox共享文件夹 . 这通常是因为文件系统“vboxsf”不可用 . 该文件系统通过VirtualBox Guest Additions和内核模块提供 . 请验证这些客人添加内容是否已在guest虚拟机中正确安装 . 这不是Vagrant中的错误,通常是由错误的Vagrant框引起的 . 对于上下文,尝试的命令是:mount -t vboxsf -o uid = 1000,gid = 1000 keys / keys
该命令的错误输出为:mount:错误的fs类型,错误的选项,键上的超级块坏,
丢失代码页或帮助程序,或其他错误
在某些情况下,在syslog中找到有用的信息 - 尝试dmesg |尾巴左右 .

我试过手动安装 vagrant-vbguest 插件(通过 vagrant plugin install vagrant-vbguest ),但没有修复任何问题 . 降级回5.1.18确实解决了这个问题,但这并不是理想的进展 .

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

6 回答

  • 24

    Update

    已在VirtualBox 5.1.22中修复 .

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

    Original answer

    在我的情况下,VM中的符号链接是错误的 . 登录VM:

    $ vagrant ssh
    

    然后:

    $ 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/VBoxGuestAdditions-5.1.20/时,您会看到子文件夹“other”不存在 . 这一行修复了:

    $ sudo ln -sf /opt/VBoxGuestAdditions-*/lib/VBoxGuestAdditions/mount.vboxsf /sbin/mount.vboxsf
    

    现在注销VM:

    $ exit
    

    并检查它是否适合您:

    $ vagrant reload
    

    But i can't fix the link because /sbin/mount.vboxsf does not exist inside my box!

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

    • 暂停所有正在运行的VM .

    • 打开VirtualBox程序 .

    • 开始下载VirtualBox Extension Pack并进行安装 .

    • 如果没有询问您是否要下载VirtualBox扩展包,请打开 - >文件 - >检查更新,以触发下载对话框 .

    如果VirtualBox扩展没有更新,则安装_1041109,因为安装程序显示一条消息,并且vagrant插件vbguest无法提示答案(此is "fixed" in vbguest v0.15.0) . 你可以在"vagrant 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
    

    A last hope: DIY!

    如果上述内容无效,请尝试手动安装guest虚拟机添加:

    $ 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
    
  • 116

    安装vbguest插件在我的案例中使用VirtualBox 5.2.6和Vagrant 2.0.1:

    vagrant plugin install vagrant-vbguest

  • 1

    这对我有用...运行以下内容:

    vagrant plugin repair
    

    然后

    vagrant plugin expunge --reinstall
    

    然后

    vagrant reload
    
  • 2

    删除类型:来自homestead.yaml的“nfs”为我修复了它 . 赢10,Vagrant 1.9.7,laravel 5.4,宅基地 .

  • 0

    对我来说,以下命令后续重新启动客户系统有助于:

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

    我找到了解决方案here . 参考这篇文章你需要在触发命令之前停止vboxadd(我没知道vboxadd是什么) .

  • 0

    对于那些在我这里遇到与我几乎相同问题的人来说,下面是解决方案

    TLDR

    • VirtualBox guest虚拟机因 system is currently not set up to build kernel modules 而失败

    • 解决方案是卸载 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 wget ftp://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中下载的文件

    • exit

    • vagrant reload

    详细信息:问题

    • 执行 vagrant up 但失败但类似的错误除外

    该命令的错误输出为:/sbin/mount.vboxsf:安装失败并显示错误:没有此类设备

    • 进一步阅读日志,我注意到以下关键词

    安装Virtualbox Guest Additions 5.2.16 - guest虚拟机版本为5.1.10安装VirtualBox Guest Additions期间发生错误此系统当前未设置为构建内核模块 . 请安装与包含头文件的当前内核包匹配的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 才能工作

    详细信息:我的环境

    • bento / centos-7.2

    • vagrant version:2.0.4

    • 虚拟盒版本:5.2.16

    来源

相关问题