Vagrant 默认的 VirtualBox 共享目录方式读写性能表现并不好,好在 Vagrant 支持 NFS 文件系统方式的共享,我们可以启用 NFS 提升性能

开启方法

首先要把虚拟机的网络设置成 :private_network 模式。

然后确认宿主机系统是否安装了 nfsd,Mac OS X 默认是集成了的,部分 Linux 需要安装对应 package 才能支持(以 Ubuntu 为例):

$ sudo apt-get install nfs-kernel-server nfs-common

同时,虚拟机里的系统也要安装对应的 package:

$ sudo apt-get install nfs-common

接下来编辑配置文件 Vagrantfile,将共享的目录 nfs 设置为 true,如下:

Vagrant.configure("2") do |config|  # ...  config.vm.synced_folder ".", "/vagrant", :nfs => trueend

保存后,使用命令 vagrant reload 重启虚拟机后才会生效,期间会修改宿主计算机的 /etc/exports 文件,因此可能要你输入密码,而且每次启动都要会求输入,稍微有点麻烦。

测试结果

这样,NFS 就成功启动了,下次做单元测试的时候,可以测试一下速度,会不会快些呢?这里有个官方做单元测试跑出的分数:

VirtualBox Shared Folders:         5m 14sHost File System:                     10sNative VM File System:                13sNFS Shared Folders:                   22sNFS Shared Folders (warm cache):      14s

由于 Windows 并不支持 NFS,所以 Windows 用户无法使用该功能。

待解决疑问:

  1. NFS 是否支持 :public_network? 答:不支持

  2. 有人说还得安装 portmap,能给我解释下为什么吗?

  3. windows下 vagrant nfs支持问题?参考:http://www.iamle.com/archives/2011.html

参考来源:http://docs.vagrantup.com/v2/synced-folders/nfs.html

原文地址:开启 NFS 文件系统提升 Vagrant 共享目录的性能
标签:vagrant   mac   nfs   share_folder

智能推荐

开启 NFS 文件系统提升 Vagrant 共享目录的性能的更多相关文章

  1. 客户端挂载NFS服务器中的共享目录(用户后台上传图片与前台上传图片放在同一个服务器上)

    服务器端使用showmount命令查询NFS的共享状态 # showmount -e //默认查看自己共享的服务,前提是要DNS能解析自己,不然容易报错 # showmount -a //显示已经与客 ...

  2. NFS 开机自动挂载共享目录

    开机自动挂载: 如果服务端或客户端的服务器重启之后需要手动挂载,我们可以加入到开机自动挂载 在服务端/客户端的/etc/fstab里添加 192.168.22.204:/opt/filestore  ...

  3. 关于nfs共享目录的使用技巧

    nfs客户端的使用 1.查看nfs服务器信息挂载信息 1)在客户端,要查看nfs服务器上有哪些共享目录 # showmount -e nfs服务器ip 在客户端,要查看nfs服务器上有哪些客户端的目录 ...

  4. NFS配置-实现多服务器共享目录

    NFS网络文件系统 为什么要用NFS? 前端所有的应用服务器接收到用户上传的图片.文件.视频,都会统一放到后端的存储上.共享存储的好处:方便数据的查找与取出,缺点:存储服务器压力大,坏了丢失全部数据. ...

  5. NFS共享目录

    NFS(Network Files System)即网络文件系统 NFS文件系统协议允许网络中的主机通过TCP/IP协议进行资源共享,NFS客户端可以像使用本地资源一样读写远端NFS服务端的资料,需要 ...

  6. (实用)Ubuntu 开启NFS服务

    本文介绍如何在Ubuntu下开启NFS文件系统,从而挂载网络上其他机器的文件系统. NFS, Network File System, 即网络文件系统,通常NFS有提供者和使用者,提供者export自 ...

  7. centos配置nfs服务详细步骤(centos开启nfs服务)

    一.NFS服务简介 NFS 是Network File System的缩写,即网络文件系统.一种使用于分散式文件系统的协定,由Sun公司开发,于1984年向外公布.功能是通过网络让不同的机器.不同的操 ...

  8. NFS 文件系统

    NFS的安装是非常简单的,只需要两个软件包即可,而且在通常情况下,是作为系统的默认包安装的. NFS服务的主要配置文件 /etc/exports /etc/exports文件内容格式: <输出目 ...

  9. qemu中使用9p,支持host和guest中共享目录【转】

    转自:https://blog.csdn.net/ayu_ag/article/details/52956351 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csd ...

随机推荐

  1. Spring Web 应用的最大败笔

    开发人员在使用Spring应用是非常擅长谈论依赖注入的好处.不幸的是,他们不是那么真的利用它的好处,如单一职责原则,分离关注原则.如果我们一起来看看大部分Spring的Web应用程序,常见的错误的设计 ...

  2. Android学习之Gallery

    在Android中,画廊控件Gallery用来显示图片列表,可以用手指直接拖动图片左右移动.Gallery只能水平显示一行,且Gallery列表中的图片会根据不同的拖动情况向左或向右移动,直到显示到最 ...

  3. 使用kendynet构建异步redis访问服务

    使用kendynet构建异步redis访问服务 最近开始在kendynet上开发手游服务端,游戏类型是生存挑战类的,要存储的数据结构和类型都比较简单,于是选择了用redis做存储,数据类型使用stri ...

  4. 《转》python学习(10)-集合

    转自 http://www.cnblogs.com/BeginMan/p/3160565.html 一.目录 1.集合概述 2.关于集合的操作符.关系符号 3.集合的一系列操作(添加.更新.访问.删除 ...

  5. 【NET多线程】C#多线程异步请求多个url地址

    异步测试代码 System.Diagnostics.Debug.Print("start"); new Thread(new ThreadStart(new Action(() = ...

  6. Delphi2010中DataSnap技术

    文章来源: https://blog.csdn.net/xieyunc/article/details/47865227?_t_t_t=0.3049736963513836 一.为DataSnap系统 ...

  7. sea.js常用接口

    seajs.config 用来对 Sea.js 进行配置. seajs.config({ // 指定需要使用的插件 plugins: ['text', 'shim'], // 设置别名,方便调用 al ...

  8. [原]sublime Text2

    sublime Text2 升级到 2.0.2 build 2221 64位 的破破解 sublime Text2 download website 链接: http://pan.baidu.com/ ...

  9. Visual Studio 2015打开ASP.NET MVC的View提示"Object reference not set to an instance of an object"错误的解决方案

    使用Visual Studio 2013打开没有问题,但Visual Studio 2015打开cshtml就会提示"Object reference not set to an insta ...

  10. html to openxml

    Html to OpenXml How to start ? Create a new console application. Add a reference to DocumentFormat.O ...