双向同步 Vagrant Rsync

13

我已经配置了 Vagrant,使用 Rsync 共享文件夹来替代 VirtualBox 默认提供的(极其缓慢的)vboxsf 文件系统:

Vagrant.configure("2") do |config|
    config.vm.synced_folder ".", "/vagrant", type: "rsync",
        rsync__args: ["--verbose", "--archive", "-z"]
end

显然,还有更多的配置,但我在这里找到了这些指示(链接),它们通常用于从主机到客户机的同步。

然而,我需要让客户机能够向主机进行同步,因为我的一些构建工具只安装在客户机上。如何在共享文件夹中进行双向同步?

3个回答

18

6
很遗憾,引用自文档
“rsync同步文件夹只会在运行Vagrant的机器和被启动的机器之间进行一次单向同步。”
因此最好使用NFS(如果使用Windows主机,则使用SMB)。
在某些情况下,默认的共享文件夹实现(如VirtualBox共享文件夹)会有很高的性能惩罚。如果您在同步文件夹方面看到的性能不理想,请注意这一点。

3
这是错误的; vagrant box可在网络上作为一台计算机进行查看。您可以像这里看到的那样,使用scp从中复制或复制到其中:https://dev59.com/kmQn5IYBdhLWcg3wmILY#31764721. 因此,您可以执行递归的scp。我相信即使没有自动化,也有一种方法可以使用rsync - Wildcard

3

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