Vagrant:同步速度极慢的文件夹(Mac主机,Ubuntu来宾)



有很多页面与这个问题有关,我尝试过通常建议的切换到基于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(或者哦,我的zsh)。。作为我的供应脚本的一部分,我安装了zsh并使其成为默认的shell。我注意到我的其他流浪客人都很快,他们都共享同一个同步文件夹。唯一的区别是zsh。当我删除zsh时,性能正好回到了预期(cd进入dir需要<1秒,而在1:02m-2:43m之间)。也许这与zsh试图索引内容以完成命令有关?如果我有时间解决它,我会回来报告,但目前将shell设置为bash已经为我解决了这个问题。

最新更新