Vagrant挂载目录失败mount: unknown filesystem type ‘vboxsf’

时间:2021-12-31 14:49:27

一、背景

​  最近在玩Mac OS下的虚拟机,然后有朋友推荐了我Vagrant,但是在设置完跟宿主机共享目录然后启动虚拟机的时候,出现了vagrant mount: unknown filesystem type 'vboxsf'问题,而且网上的解决访问在我的电脑上不适用,折腾了很久才解决,所以记录一下,以便能帮到遇到同样问题的小伙伴。

错误如下:

  Vagrant挂载目录失败mount: unknown filesystem type ‘vboxsf’

二、解决思路及步骤

​  遇见这个,感觉瞬间懵逼。不过好在理智控制住了我,我就去网上查呀查,知道了原因是要先安装virtualbox guest addtions才能开启目录共享。很无奈的是都没能解决,下面给出网上的解决方式:


虚拟机启动之后,点击虚拟机上边的菜单 Device > Insert Guest Addtions CD image… ,默认情况下,会在虚拟机centos中添加一个磁盘。可是到我这里,我点击以后弹出如下错误:

  Vagrant挂载目录失败mount: unknown filesystem type ‘vboxsf’

别的解决方式和思路差不多,很明显我这里没办法通过这种方式解决。


然后我就打开虚拟机设置自己摸索,但我知道目的是在虚拟机中安装GuestAdditions,终于在摸索了好久以后我发现了其中的奥秘,解决办法如下:

  1. 首先把/Applications/VirtualBox.app/Contents/MacOS路径下的VBoxGuestAdditions.iso文件复制到桌面(也可以复制到别的位置,便于查找就好)。

  2. 接着关闭虚拟机,然后点击设置,进行如下操作

    Vagrant挂载目录失败mount: unknown filesystem type ‘vboxsf’

  3. 然后选择“选择磁盘”按钮

    Vagrant挂载目录失败mount: unknown filesystem type ‘vboxsf’

  4. 在弹出的finder中选择我们第一步复制的VBoxGuestAdditions.iso文件。

  5. 然后重新启动虚拟机,并在虚拟机中的/media文件夹下新建cdrom文件夹,命令如下:

    mkdir /media/cdrom
  6. 查看当前虚拟机中所有连接的虚拟设备

    lsscsi (适用于centos7)
    lsblk (适用于ubuntu)

    会看到如下的列表:

    Vagrant挂载目录失败mount: unknown filesystem type ‘vboxsf’

  7. 接着我们把sr0挂载到/media/cdrom,然后进入/media/cdrom

    sudo mount /dev/sr0 /media/cdrom

    结果如下:

    Vagrant挂载目录失败mount: unknown filesystem type ‘vboxsf’

  8. 然后执行如下命令:

    cd /media/cdrom
    sudo ./VBoxLinuxAdditions.run

    有以下输出:

    Vagrant挂载目录失败mount: unknown filesystem type ‘vboxsf’

  9. 然后重启虚拟机,我们就会发现,神奇的错误解决了。

三、总结

  成长的过程中,我们遇到问题并不可怕,怕的是遇见挫折我们就放弃了。解决之前,我们一定不能懵逼,要冷静下来,看看到底是哪一环出了问题,然后围绕这个问题去思考,再加上去网上查资料,肯定能解决,但是呢,有一点要说明,网上并不是所有的解决方案都是对的,抄袭很严重,所以我们要加以甄别,然后主抓思路,根据他们的思路加上自己的思考来解决当前的问题才是正确的解决问题的方式。