加快 Vagrant 上主机和来宾之间的同步延迟(NFS 同步文件夹)

Posted

技术标签:

【中文标题】加快 Vagrant 上主机和来宾之间的同步延迟(NFS 同步文件夹)【英文标题】:Speed up sync latency between host and guest on Vagrant (NFS sync folders) 【发布时间】:2014-11-08 15:45:30 【问题描述】:

我正在使用 vagrant 在本地机器上运行 wordpress 开发环境,将 nfs 设置为默认文件共享机制(我在 mac 上)。整体性能非常好,除了一件事:同步延迟。

我已经在客户机上设置了 grunt watchers 来重新编译 css / javascript 以及在每次文件更改时重新加载页面。但是,当我在主机上保存文件时:在来宾上同步之前需要 1 到 10 秒。

我希望能够在主机上点击保存,并看到更改立即反映在来宾上,这将触发 grunt watcher 执行我需要它执行的所有操作。

有没有办法做到这一点?破解以强制与 grunt 同步一些文件? 我已经尝试过 rsync,但它的延迟似乎更糟糕。

谢谢

【问题讨论】:

【参考方案1】:

在这里找到答案https://github.com/mitchellh/vagrant/issues/4204#issuecomment-49856008

只需将挂载选项添加到 Vagrantfile 中的 nfs 共享,这将使 nfs 共享在每次保存时几乎立即同步(

config.vm.synced_folder "www/", "/srv/www/", :type => "nfs", mount_options:['nolock,vers=3,udp,noatime,actimeo=1']

【讨论】:

对我来说,唯一的 actimeo 完成了这项工作:config.vm.synced_folder "www/", "/srv/www/", :type => "nfs", mount_options: ['actimeo= 1']

以上是关于加快 Vagrant 上主机和来宾之间的同步延迟(NFS 同步文件夹)的主要内容,如果未能解决你的问题,请参考以下文章

将单个文件从主机复制到 Vagrant 来宾的最简单方法?

VMWare主机和来宾的同步文件夹

使用 Vagrant 访问日志文件夹

Vagrant:如何禁用 Windows 主机的 NFS 同步文件夹?

如何在主机和来宾机器之间的共享 nfs 目录中映射符号链接目标路径?

如何在不重新加载Vagrant的情况下切换同步文件夹?