VirtualBox共享文件夹停止工作

时间:2019-03-27 18:35:40

标签: vagrant virtualbox

许多月以来,我一直在具有Ubuntu 16 guest虚拟机的Windows 10主机上成功使用VirtualBox 5.xx.xx和Vagrant 2.xx(不记得其余的版本号)。在过去六个星期中的某个时刻,vagrant up上的来宾添加开始在主机和来宾上报告为不同版本,而我将要从Windows端对同步文件进行的更改并非总是在Ubuntu上实现。为了解决此问题,我将Vagrant升级到最新版本,然后尝试将VirtualBox从低至5.0.18升级和降级(在vagrant up上产生错误)升级到最新(6.0.4)。 )。在Vagrant启动时尝试5.2.24和5.2.26会产生消息,指出主机上的来宾添加被报告为5.0.18,而来宾上的来宾添加被报告为5.2.24(或0.26)。然后,最后一条启动消息指出Virtualbox版本为5.2,Guest Additions版本为5.1.30-因此有时我总共报告了三个不同版本的Guest Additions。我安装了vagrant-vbguest插件。我下载了与VBox版本匹配的Guest Additions ISO版本,并将Guest Additions ISO加载到VirtualBox的虚拟光盘驱动器中(以及Vagrantfile中指定的config.vbguest.iso_path = "VBoxGuestAdditions_5.x.x.iso"

我的Vagrant / VirtualBox设置可能在过去一年中运行良好,并且我从来不想“升级”,因为在“升级”到较新版本之前,我已经经历了很多麻烦。通过长时间的在线搜索,我很确定这个问题是由于将dist升级到Ubuntu(我经常这样做)引起的,因为很长一段时间以来我对Vagrant / VBox设置都没有做任何更改。我希望升级到最新的VirtualBox(6)可以解决问题,但可悲的是,此版本更糟-Ubuntu在启动过程中缓慢启动,并且花费了很长时间,我什至没有让它完成经过几次尝试。

很高兴看到这个最新的VirtualBox 6是否可以解决问题,所以也许有人对为什么这样慢会有所想法(我有一台8核16Gb机器,并且我已经分配了4核并且有很多到VBox的内存-在5.2.xx下可以正常启动。

vagrant up输出:

  

SSH用户名:无业游民

     

SSH身份验证方法:私钥

     

警告:连接重置。正在重试...

     

默认值:机器已启动并准备就绪!得到了有关的不同报告   已安装的GuestAdditions版本:主机上的Virtualbox声明:   5.0.18 vm内部的VBoxService声明:5.2.26继续,假设VBoxService是正确的...

     

GuestAdditions似乎已正确安装(5.2.26),但未正确安装   运行。获得有关已安装的GuestAdditions版本的不同报告:   您主机上的Virtualbox声称:vm内有5.0.18 VBoxService   索赔:5.2.26

     

继续,假设VBoxService是正确的...

     

vboxadd-service.service的作业失败,因为控制过程   退出并显示错误代码。请参见“ systemctl状态vboxadd-service.service”   和“ journalctl -xe”以获取详细信息。

     

获得有关已安装的GuestAdditions版本的不同报告:   您主机上的Virtualbox声称:vm内有5.0.18 VBoxService   声明:5.2.26继续,假设VBoxService是正确的... bash:行   4:设置:找不到命令

     

正在检查VM中的来宾添加...

     

此VM上的来宾添加项与已安装的来宾版本不匹配   VirtualBox!在大多数情况下,这很好,但在极少数情况下,可以   防止诸如共享文件夹之类的东西正常工作。如果你   查看共享文件夹错误,请确保在其中添加来宾   虚拟机与您已安装的VirtualBox版本匹配   在主机上并重新加载虚拟机。

     

访客添加版本:5.1.30

     

VirtualBox版本:5.2以下SSH命令以   非零退出状态。 Vagrant认为这意味着命令   失败了!

2 个答案:

答案 0 :(得分:0)

经过数小时的搜索并尝试了不同的建议,以下是解决问题的方法:

  • 下载了最新版本的unofficial release build of VirtualBox(在我的情况下是5.2.27)并安装了
  • 在我的Vagrant文​​件中放置了以下内容:config.vbguest.iso_path = "https://www.virtualbox.org/download/testcase/VBoxGuestAdditions_5.2.27-129578.iso"
  • vagrant up

Ubuntu启动正常,但是在主机端,Vagrant正在显示错误消息,如下所示:

  

无法在Linux guest虚拟机中安装文件夹。这通常是因为   “ vboxsf”文件系统不可用。

接下来,在启动的Ubuntu客户机上:

  • sudo apt autoremove清理Linux标头

然后:

  • 从主机运行vagrant vbguest

然后,vbguest经历了卸载现有来宾添加项并从config.vbguest.iso_path安装VBoxGuestAdditions_5.2.27的过程。

要验证是否正确安装了来宾添加,请运行vagrant vbguest --status(或再次运行vagrant vbguest)。两条命令都返回:

  

[默认] GuestAdditions 5.2.27正在运行---确定。

以上操作导致名为VBoxGuestAdditions-5.2.27的文件夹被放置在/opt文件夹中。该VBoxGuestAdditions-5.2.27文件夹包含七个子文件夹,两个文件(uninstall.sh和例程.sh)和一个LICENSE文件。我找不到关于vagrant-vbguest将已安装项目放置到/opt文件夹中的文档,但确实找到了一个小提here

我怀疑此过程适用于任何5.2.xx版本(可用here),但是我已经安装了5.2.27,因此可以继续进行。

答案 1 :(得分:0)

在将laravel / homestead box更新到v7.2.1之后,我遇到了同样的问题。 This blog post帮助我解决了这个问题。

总之,这是您要做的:

  1. 导航到包含您的Vagrantfile的目录并运行vagrant plugin install vagrant-vbguest

我第一次执行命令时,它禁用了我的WiFi适配器,安装失败。如果发生这种情况,请重新激活它并重新运行命令。

  1. 安装完成后,运行vagrant up来启动VM。它将更新Guest Additions