VirtualBox共享文件夹停止工作

问题描述 投票:-1回答:2

几个月来,我在Ubuntu 16 guest虚拟机的Windows 10主机上成功使用了VirtualBox 5.xx.xx和Vagrant 2.xx(不记得其他版本号)。在过去的六个星期的某个时刻,在vagrant up上,Guest Additions开始被报告为主机和来宾的不同版本,并且我对来自Windows端的同步文件所做的更改并不总是在Ubuntu上实现。为了尝试解决这个问题,我将Vagrant升级到最新版本,然后尝试将VirtualBox从5.0.18(在vagrant up上生成错误)升级并降级到最新版本(6.0.4)。尝试5.2.24和5.2.26在Vagrant启动时产生消息,说明主机上的Guest Additions报告为5.0.18,但客人报告为5.2.24(或.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设置可能在最后一年都运行良好,我从来不想“升级”,因为我在“升级”到新版本之前已经经历过这个烂摊子。从网上搜索太长时间,我很确定这个问题是由于我对Ubuntu(我经常这样做)的升级造成的,因为我很长一段时间没有在Vagrant / VBox设置中做任何改变。我希望升级到最新的VirtualBox(6)可以解决这个问题,但遗憾的是,这个版本更糟糕 - Ubuntu在启动过程中慢慢摇晃,而且它已经花了很长时间,我甚至没有让它完成经过多次尝试。

很高兴看到这个最新的VirtualBox 6是否可以解决问题,所以也许有人知道为什么会这么慢(我有一个8核16Gb机器,我已经分配了4个核心和足够的RAM到VBox - 它在5.2.xx下启动很好。

vagrant up输出:

SSH用户名:vagrant

SSH身份验证方法:私钥

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

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

GuestAdditions似乎正确安装(5.2.26),但没有运行。有关已安装的GuestAdditions版本的不同报告:主机声明中的Virtualbox:5.0.18 vm声明中的VBoxService:5.2.26

继续,假设VBoxService正确...

vboxadd-service.service的作业失败,因为控制进程退出并显示错误代码。有关详细信息,请参阅“systemctl status vboxadd-service.service”和“journalctl -xe”。

得到关于已安装的GuestAdditions版本的不同报告:主机上的Virtualbox声明:5.0.18 vm声明中的VBoxService:5.2.26继续,假设VBoxService正确... bash:第4行:setup:命令未找到

检查VM中的guest虚拟机添加内容...

此VM上的guest虚拟机添加内容与VirtualBox的已安装版本不匹配!在大多数情况下,这很好,但在极少数情况下,它可以防止共享文件夹等工作正常工作。如果您看到共享文件夹错误,请确保虚拟机中的guest虚拟机添加项与您在主机上安装的VirtualBox版本匹配,然后重新加载VM。

Guest Additions版本:5.1.30

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

vagrant virtualbox
2个回答
0
投票

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

  • 下载了最新的unofficial release build of VirtualBox(在我的情况下为5.2.27)并安装了它
  • 将以下内容放在我的Vagrantfile中:config.vbguest.iso_path = "https://www.virtualbox.org/download/testcase/VBoxGuestAdditions_5.2.27-129578.iso"
  • Ran vagrant up

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

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

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

  • sudo apt autoremove清理Linux头文件

然后:

  • 从主机运行vagrant vbguest

vbguest然后经历了卸载现有Guest Additions并从config.vbguest.iso_path安装VBoxGuestAdditions_5.2.27的过程。

要验证是否正确安装了Guest Additions,请运行vagrant vbguest --status(或再次运行vagrant vbguest)。两个命令都返回:

[默认] GuestAdditions 5.2.27正在运行---好的。

上述操作导致名为VBoxGuestAdditions-5.2.27的文件夹放在/opt文件夹中。这个VBoxGuestAdditions-5.2.27文件夹有七个子文件夹,两个文件(uninstall.sh和routines.sh)和一个LICENSE文件。我找不到关于vagrant-vbguest将已安装的项目放入/opt文件夹的文档,但我确实找到了一个小提及here

我怀疑这个过程适用于任何5.2.xx版本(可用的here),但我已经安装了5.2.27,所以继续这样做。


0
投票

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

总之,这是你必须做的:

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

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

  1. 安装完成后,运行vagrant up启动虚拟机。它将更新Guest Additions
© www.soinside.com 2019 - 2024. All rights reserved.