由于共享文件夹访问速度慢,这与流浪者或虚拟机客户端运行缓慢无关,我们知道通过启用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(是的,它们都会随机遇到同样的问题)
答案 0 :(得分:8)
认为我们或多或少地发现了问题的根源:
我们的Ubuntu 12 LTS盒附带的Guest Addition版本(4.1.x)与主机上安装的当前Virtualbox版本(4.2.x)不匹配。因此文件同步失败。简单的解决方法:
在vm sudo apt-get -y -q purge virtualbox-guest-dkms virtualbox-guest-utils virtualbox-guest-x11
中运行此命令以删除旧的访客添加
安装vagrant vbguest插件,以便在up
期间自动处理未来更新:https://github.com/dotless-de/vagrant-vbguest