Vagrant + Chef: Error in provision “Shared folders that Chef requires are missing on the virtual machine.”

亡梦爱人 提交于 2019-12-04 07:39:21

问题


I've installed a Vagrant + Virtualbox using Chef (+library chef). When I do vagrant up first time, cookbooks get loaded correctly. However, when I do provision afterwards (be it vagrant provision, vagrant reload --provision or vagrant up --provisionI get this error:

Shared folders that Chef requires are missing on the virtual machine.
This is usually due to configuration changing after already booting the
machine. The fix is to run a `vagrant reload` so that the proper shared
folders will be prepared and mounted on the VM.

I searched everywhere and the only solution given is to do vagrant reload --provision, this worked up up to Vagrant 1.3.1.


回答1:


it seems like there is a bug with sync folders, this clears the cache and fixed it for me. (from your project directory)

rm .vagrant/machines/default/virtualbox/synced_folders
vagrant reload --provision

https://github.com/mitchellh/vagrant/issues/5199

EDIT: this should be fixed in vagrant 1.7.4




回答2:


That's a fairly common issue with the Vagrant plugins for both Berkshelf and Librarian. Just get used to running that command.

The way to avoid it is to use something like Test-Kitchen instead of the Vagrant plugins. That isn't a drop-in replacement though.



来源:https://stackoverflow.com/questions/27975541/vagrant-chef-error-in-provision-shared-folders-that-chef-requires-are-missin

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!