这是我的Vagrantfile.
config.vm.define :web do |web| web.vm.box = "ubuntu/trusty64" web.vm.network "private_network", ip: "192.168.100.111" web.vm.network "forwarded_port", guest: 22, host: 4444, id: "ssh", auto_correct: true web.vm.synced_folder "./web/", "/srv/" web.vm.provider "virtualbox" do |vb| vb.gui = true vb.name = "web" vb.cpus = 2 vb.memory = "1024" end end
我的VM工作正常,但我需要web.vm.synced_folder "./web/", "/srv/"
改为另一条路径.我试图改变它,而不是流浪汉重新加载,流浪汉提供,流浪汉重新加载web --provision,以及所有其他posibile变种.这些行动无效.更改同步文件夹的唯一方法是销毁VM并再次启动它.这不是我想要的.我需要在不破坏VM的情况下重新加载配置,这是一个对我不起作用的问题.
这不是我对同步文件夹的经验,所以你看到这种行为很奇怪.来自Vagrant文档 ......
在流浪者和流浪汉重新加载期间自动设置同步文件夹.
我只是用我的一个Vagrant盒测试它,它工作正常.我更改了本地文件夹,做了一个vagrant reload
,然后在框中检查了它.改变远程文件夹后同上.
鉴于你的情况,你可以尝试一个选项.您可以禁用同步文件夹,运行vagrant reload
,更新并重新启用它,然后vagrant reload
再重新启用它.以下是禁用同步文件夹的方法...
web.vm.synced_folder "./web/", "/srv/", disabled: true
或者您可以评论该行,运行vagrant reload
,取消注释并更改它,然后vagrant reload
再次.
我无法保证这些方法,因为我无法重现您的问题.它无论如何都适合我.