如何移动Vagrant虚拟机文件夹?

8
有没有一种方法可以移动vagrant vm文件夹而不会出现nfs共享文件夹和/etc/exports的问题?
尝试移动该机器(已停止)会导致以下错误,每当我尝试在任何其他框中操作时(例如:vagrant up):
==> default: Exporting NFS shared folders...
NFS is reporting that your exports file is invalid. Vagrant does
this check before making any changes to the file. Please correct
the issues below and execute "vagrant reload":

exports:14: path contains non-directory or non-existent components: /Users/[...]/vm
exports:14: no usable directories in export entry
exports:14: using fallback (marked offline): /
1个回答

12

虽然有些晚了,但我也遇到了同样的问题,想分享一下我的解决方案,以免其他人也遇到同样的问题。

最终我在主机上更改了/etc/exports中的路径,例如:

# VAGRANT-BEGIN: 501 121121ae-813d-4546-8fbb-f44c591f5529
"/Users/me/wrong/dir" 192.168.3.103 -alldirs -mapall=501:20
# VAGRANT-END: 501 121121ae-813d-4546-8fbb-f44c591f5529

你可以在主机上更改路径,然后执行 vagrant reload 命令,之后应该就可以运行了。

路径也存储在 .vagrant/machines/default/virtualbox/synced_folders 中(目录名称取决于使用的提供程序和是否使用默认机器),我先尝试更改了那里的路径,但那并不足够,不过如果你没有在那里也更改它,这可能会让 Vagrant 混淆 --为安全起见,你应该也在那里更改它。

不幸的是,我不知道有任何不手动更改这些文件或破坏 Box 的方法。


谢谢。顺便说一下,没有必要销毁盒子,vagrant reload就足够了。 - s7anley
1
如果 /etc/exports 文件中没有其它条目(例如在 OS X 上通常是这种情况),也可以更简单地执行 sudo rm /etc/exports - lucianf
非常感谢。我之前尝试过编辑 synced_folders~/.vagrant.d/data/machine-index/index 文件,但没有成功。编辑 /etc/exports 才有效。 - Francisco Quintero
我已经使用Vagrant多年了,直到今天我从未遇到过这个问题。我清理了我的Sites文件夹,并删除了一些旧的条目和文件夹。所以我确认编辑etc/exports确实有效。谢谢大家! - burnsjeremy
1
我在Ubuntu 18.10上没有“/etc/exports”文件。有什么想法吗? - MikeyE
我在Ubuntu 18.04上也没有/etc/exports文件,但是我成功地将我的.vagrant/文件夹和Vagrantfile移动到了一个新的位置,并且按照建议更新了.vagrant/machines/default/virtualbox/synced_folders - wrapperapps

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接