linux - vagrant 同步文件夹不能在 virtualbox 上实时工作

标签 linux vagrant virtualbox vagrantfile synced-folder

我的同步文件夹工作不正常,它们在开始时同步了一次,但是当我在主机上进行更改时,vagrant 没有实时同步它。

首先是我系统的一些细节:

  • 操作系统:Linux Mint 18 Sarah
  • 虚拟机版本:5.0.24-dfsg-0ubuntu1.16.04.1
  • Vagrant 版本:1.9.0
  • Vagrant 主机管理器 (1.8.5)
  • Vagrant 共享 (1.1.6)
  • vagrant-vbguest (0.13.0)

在我们开始讨论之前,我没有使用最新版本的 Virtualbox,因为它不在存储库中并且一个简单的 vagrant up 失败了。

我的 Vagrant 文件:

Vagrant.configure("2") do |config|
  config.vm.box = "centos/7"
  config.vm.network "private_network", ip: "192.168.88.88"
  config.vm.hostname = "my.centos.dev"
end

vagrant up 给我 this .

现在当我在主机上创建一个文件时:

falnyr@mint:~/centos-vagrant $ ls
ansible  Vagrantfile
falnyr@mint:~/centos-vagrant $ touch file.txt
falnyr@mint:~/centos-vagrant $ ls
ansible  file.txt  Vagrantfile

然后 ssh 到 guest 机器:

falnyr@mint:~/centos-vagrant $ vagrant ssh
[vagrant@my ~]$ ls /vagrant/
ansible  Vagrantfile

如您所见,文件未创建。当我执行 vagrant reload 时,同步在机器启动期间再次执行。

注意:我不能使用 NFS 同步,因为我需要跨平台就绪环境。

关于如何启用实时同步有什么想法吗?

最佳答案

盒子的所有者在同步类型上默认启用了rsync。如果你看看你的盒子的 Vagrantfile(在我的例子中是 ~/.vagrant.d/boxes/centos-VAGRANTSLASH-7/0/vmware_fusion 但你的可能在 virtualbox 供应商下)你会查看包含内容的 Vagrantfile

Vagrant.configure("2") do |config|
  config.vm.synced_folder ".", "/vagrant", type: "rsync"
end

只需从 box 目录中删除此文件即可。

请注意,如果您打算使用 nfs,您可以在 Vagrantfile 中更改同步类型

Vagrant.configure("2") do |config|
  config.vm.box = "centos/7"
  config.vm.network "private_network", ip: "192.168.88.88"
  config.vm.hostname = "my.centos.dev"
  config.vm.synced_folder ".", "/vagrant", type: "nfs"
end

关于linux - vagrant 同步文件夹不能在 virtualbox 上实时工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40972345/

相关文章:

php - 使用 vagrant/puppet 自动设置 xdebug.remote_host ip 地址

linux - 如何从视频文件中获取纵横比?

c - 我们是否需要在收到来自 cond 变量的信号后解锁互斥锁?

php - rove.io 的 vagrant lamp 配置精确 64 不起作用?

linux - 启动 Vagrant 时连接超时

windows-7 - 如何在 Ubuntu 客户机、Windows 7 主机上的 virtualbox 中禁用水平滚动?

ubuntu - Virtualbox桥接网络不工作

linux - 如何将存档的所有对象包含在共享对象中?

c++ - 是否可以在linux下启动或停止屏保时得到通知

linux - Ubuntu 错误地显示磁盘空间不足