Vagrant:同步文件夹极慢(Mac Host,Ubuntu Guest)

Vagrant: extremely slow synced folder (Mac Host, Ubuntu Guest)

有很多页面与此问题相关,我已经尝试了通常建议的切换到基于 NFS 的共享。这实际上使延迟增加了一倍。基于 rsync 的同步不是一个可行的选择,因为共享文件夹是 18G,我不想用 --exclude 文件来管理它,因为 --exclude 列表最多每周更改一次,并且成为管理噩梦)

奇怪的是,与 Macbook Pro 主机 (OS/X El Cap) 相比,在 Ubuntu 主机 运行 劣质硬件上的性能非常出色。

同步文件夹大小:18G:

**Ubuntu Host**
    vagrant: 1.7.4 (installed via apt-get @ 15.10)
    VirtualBox: 5.0.14_Ubuntur105127 (installed via apt-get @ 15.10) 

    synced as: config.vm.synced_folder ENV['src'], "/src", create: false  
        cd /repo     // instant
        ls           // instant

**Mac Host**
    vagrant: 1.8.1 (installed via homebrew)
    VirtualBox: 5.0.16 (installed via binary at Oracle site)

    synced as: config.vm.synced_folder ENV['src'], "/src", create: false %
        % cd /repo     // 1 minute, 2 seconds
        % ls           // 27 seconds

    synced as: config.vm.synced_folder ENV['src'], "/src", type: "nfs", create: false
        % cd /repo     // 2 minutes, 43 seconds
        % ls           // 40 seconds

我确实确定是什么让它变得非常慢,尽管我还没有弄清楚原因。

它是 zsh(或 oh-my-zsh)。作为配置脚本的一部分,我安装了 zsh 并将其设置为默认值 shell。我注意到我的其他流浪客人非常活泼,他们都共享同一个同步文件夹。唯一的区别是 zsh。当我删除 zsh 时,性能立即恢复到预期状态(与 1:02m-2:43m 之间相比,cd 进入目录花费的时间小于 1 秒)。也许这与 zsh 试图为命令完成索引内容有关?如果我有时间解决它,我会报告,但目前将 shell 设置为 bash 已经为我解决了这个问题。