在使用 vagrant 搭建 php 开发环境的时候,需要用到文件同步同步功能。在比对了众多网络文件系统之后,发现对 Windows 下文件同步系统最友好的是 smb, 那么怎么在 vagrant 启用 smb 文件共享呢?

不管你是用什么方式拿到了 vagrant box,在启动 vagrant box 的时候,请修改 Vagrantfile:

Vagrant.configure("2") do |config|
  config.vm.synced_folder "C:/Work", "/home/Code",
    type: "smb",
    smb_host: "192.168.33.1",
    smb_username: "ranwuer",
    smb_password: "yourpassword",
    mount_options: ["username=ranwuer","password=yourpassowrd"]
end

参数解释:

1. smb_host

表示需要与哪台主机共享文件,这里填的是 host 端的 IP 地址,需要以下配置启动后,才可以使用这个 IP。

config.vm.network "private_network", ip: "192.168.33.11"

这个配置的意思是,guest 主机与 host 主机通信的私有网络。host 端的 IP 为 192.168.33.1,可以在 cmd 中输入 ipconfig 查看:

这样以来,就可以使用 smb 实现 guest 的文件夹和 host 端的文件夹之间的数据同步了。

2.smb_username,smb_password

如果不输入这个参数的话,在你运行 vagrant up 的时候,vagrant 会提示你输入 windows 的用户名和密码,来实现对 windows 中某文件夹的连接。目前我是在 windows 10 系统上实现的,还请根据实际情况填写这两个参数。总之配置了这两个参数不用每次启动的时候都输入 windows 的用户名和密码。

3.mount_options

填写这个参数是为了解决 “wrong fs type” 错误,见:https://www.vagrantup.com/docs/synced-folders/smb.html 的 COMMON ISSUES 章节。这是官方提出的错误解决方案,反正我这样子用了,就没有出现问题了。

错误提示:

一些常用技巧:

1.为了防止smb共享剔除不活动的连接需要执行以下命令让系统不要自动踢掉不活动的连接
net config server /autodisconnect:-1

2.vagrant不会自动删除共享,要删除共享使用命令
net share c30268623ba3dedeaa9f098b570dca21 /delete

3. 用 net share 查看文件共享状态

总之,我根据这个配置, 解决了在 windows 下虚拟机与 hos t主机的通过 smb 共享的问题,还请各位看官轻拍。

在 Vagrant 下启用 SMB 文件共享的更多相关文章

  1. linux/windows下启用和停止VMware后台服务的脚本

    linux/windows下启用和停止VMware后台服务的脚本 linux/windows下启用和停止VMware后台服务的脚本 linux平台 windows平台 本文由乌合之众 lym瞎编,欢迎 ...

  2. Debian9.5解决在root用户下启用VNC后lightdm+Xfce4只能使用root登录,其他用户无法登陆

    Debian9.5解决在root用户下启用VNC后lightdm+Xfce4只能使用root登录,其他用户无法登陆 最近在研究debian9.5 VNC的问题,当VNC使用tightVNC或tiger ...

  3. 在macOS下启用CGO_ENABLED的交叉编译

    在macOS下启用CGO_ENABLED的交叉编译 在启用CGO_ENABLED的情况下,尝试使用下面命令进行Windows平台的交叉编译: $ CGO_ENABLED= GOOS=windows G ...

  4. CentOS7下使用NFS文件共享给Window server 2012

    CentOS7下使用NFS文件共享给Window server 2012 2018年08月24日 23:15:54 疼迅扣扣 阅读数:443  出自https://blog.csdn.net/u013 ...

  5. WCF在tcp通道下启用httpget

    关于tcp通道下,启用httpget,必须启用一个http的基地址,如果要启用元数据交换,host中必须开启服务描述. //01 create host Uri tcpBaseAddress = ne ...

  6. Linux 下安装Samba 文件共享服务器

    samba文件共享服务可以让linux和linux系统.linux和windows系统之间共享文件 服务查询 默认情况下,Linux系统在默认安装中已经安装了Samba服务包的一部分,为了对整个过程有 ...

  7. Win7 IIS下启用ASP.NET

    问题产生的原因 先装的Win7,未启用IIS, 后启用IIS功能,即使选中开发选项只能默认打开ASP.net 中FrameWork2的支持,其它 版本的FrameWork默认IIS不支持,需要手工开启 ...

  8. windows server2008 r2 下启用 sqlserver 2008的远程连接

    首先说明,本文转自互联网. TMD 花了二天,终于找到怎么开启这个远程连接了.....娘的,累死了,写下来,希望能帮助同胞们... 用win server 2008 r2 和sql server 20 ...

  9. IIS7.5下启用asp父级路径

    如果你是运行asp显示需要启动父路径的话可以这样解决: 在IIS 下 打开ASP选项,有个启用父路径的选择项,选择True 就可以了! 具体看图!因为没法贴两张图,就弄在一张里了!

随机推荐

  1. JSON 的应用

    使用  JSON 需要的 jar 包:

  2. JavaWeb 学习0010-今日问题 2016-12-3

    2016-12-3 1. 今天要做的第一个问题就是,怎么把网页变得好看点: addStudent/listStudent页面都有改动 其中 list页面还有了<c:if 的语句这是还没练习过得知 ...

  3. C# winform key value型数据如何绑定ComBox (hashtable,keyvaluepair,dictionary )

    cbUserAgent是一个combox ArrayList list = new ArrayList(); Dictionary<string, string> useragents = ...

  4. Linux 安装git

    0.安装git前: 先去git 官网上看一眼,Linux怎么安装git , 原来非常简单,只需要输入命令即可,但是不同的linux 版本对应的命令不一样: 命令行查看Linux版本: $ cat /e ...

  5. pxe无人值守安装多网卡注意事项

    pxe无人值守安装linux配置这里就不说了,直接看这篇博客http://www.cnblogs.com/mchina/p/centos-pxe-kickstart-auto-install-os.h ...

  6. 四元数(Quaternions)简介

    经常在代码中看到Quaternions,也知道它是用来表达三维空间的旋转的,但一直没有更深的理解.这两天终于花点时间看了看维基百科的介绍,算是多了解了点.做个记录吧! 本质上而言,四元数是一个数学概念 ...

  7. POJ 2010 Moo University - Financial Aid treap

    按第一关键字排序后枚举中位数,就变成了判断“左边前K小的和 + 这个中位数 + 右边前K小的和 <= F",其中维护前K小和可以用treap做到. #include <cstdi ...

  8. 《笨办法学C》笔记之基础语法

    这篇笔记不怎么系统,只记录自己比较生疏的知识 变量定义 类型 定义 格式化符号 备注 整数 int %d 长整型 long %ld 单精度浮点 float %f 双精度浮点 double %f 字符 ...

  9. js处理匿名函数

    首先js 有DOM0 和DOM2级事件 DOM 0级事件处理一般是直接把一个函数分配给一个事件处理程序,既可以在元素中直接分配一个事件处理程序 一个元素可以绑定多个事件 DOM0: <div i ...

  10. C#图片保存到本地

    /// <summary> /// 上传微信头像到服务器 /// </summary> /// <param name="imgUrl">< ...