当存在许多与文件相关的操作时,Vagrant / Virtualbox,共享文件夹不同步

时间:2013-09-21 14:07:03

标签: virtualbox vagrant

由于共享文件夹访问速度慢,这与流浪者或虚拟机客户端运行缓慢无关,我们知道通过启用nfs可以或多或少地解决这个问题。

当vm中存在许多文件操作时,挂载的共享文件夹不同步(启用nfs不会阻止它发生)。

例如,当我们在vm中安装软件包(例如php composer或node.js npm)时,正常composer update或{{1}的可能性很小。将失败,一旦失败,只有npm install将有助于恢复同步文件夹并允许相同的命令通过而没有问题。

这种随机故障只发生在共享文件夹(nfs与否)上,因此vagrant reload不会触发与在vm文件夹中运行相同的问题。

由于当我们从主机服务器运行composer或npm时没有出现相同的同步问题,我想知道是什么导致了它,我们如何调试呢?

我们的流浪汉设置和配置:

apt-get upgrade

访客:Ubuntu 12.04 LTS x64

主机:Windows 8,Mac OSX 10.8,Ubuntu 13(是的,它们都会随机遇到同样的问题)

1 个答案:

答案 0 :(得分:8)

认为我们或多或少地发现了问题的根源:

我们的Ubuntu 12 LTS盒附带的Guest Addition版本(4.1.x)与主机上安装的当前Virtualbox版本(4.2.x)不匹配。因此文件同步失败。

简单的解决方法:

  1. 在vm sudo apt-get -y -q purge virtualbox-guest-dkms virtualbox-guest-utils virtualbox-guest-x11中运行此命令以删除旧的访客添加

  2. 安装vagrant vbguest插件,以便在up期间自动处理未来更新:https://github.com/dotless-de/vagrant-vbguest