多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
我们希望多台虚拟机使用相同的文件夹, 多个虚拟机里面的站点内容必须一致, 或者web服务器的配置文件要一致,,这个时候我们就会在宿主机上建立一个目录,然后同步到虚拟机里。 先决条件: 一、宿主机和虚拟机上需要安装rsync软件 缺点: 单向同步,只能把宿主机上的某个目录或文件,同步到虚拟机里,不能把虚拟机里目录或文件,同步到宿主机 二、实施案例: * 把宿主机上/website目录同步到虚拟机/opt/web目录下 前提条件: 在宿主机上安装rsync [root@vagrant ubuntu]# yum -y install rsync 1、创建目录,并授权 [root@vagrant ubuntu]# mkdir /website [root@vagrant ubuntu]# chown -R www.www /website 2、编辑Vagrantfile文件 [root@vagrant ubuntu]# vim Vagrantfile 添加如下 config.vm.synced_folder "/website/","/opt/web",type: "rsync" 说明:把本地/website目录同步到虚拟机/opt/web目录 3、启动虚拟机 [root@vagrant ubuntu]#vagrant reload(重载) 4、测试查看 ![](https://box.kancloud.cn/25697ca757b3a542607841dca9291275_888x392.png) 总结: * 默认情况,不管宿主机上这个共享的目录属主和属组是谁,在虚拟机上查看到的,这个目录的属主和属组都会变成登录虚拟机的用户 比如: 宿主机上,/website目录的属主为www,属组为www,登录虚拟机的用户为vagrant,那么通过vagrant ssh登录虚拟机,发现/opt/web的目录属主为vagrant,属组也为vagrant * 切记不能再虚拟机/opt/web目录下创建文件或目录,不然同步,就会丢失 * 如果不想每次手工运行,vargrant rsync来同步文件或目录,可以运行 vagrant rsync-auto [root@vagrant ubuntu]# nohup vagrant rsync-auto & 三、其他参数 1、设置rsync同步目录的属主和属组 config.vm.synced_folder "/website","/opt/web",owner: "www",group: "www",type: "rsync" 截图: ![](https://box.kancloud.cn/69c6cccfd87eac38207652a84257cf6b_1270x575.png)