vagrant synced文件夹在virtualbox上不能实时工作

问题描述 投票:3回答:4

我的同步文件夹工作不正常,它们在启动时一次性同步,但是当我在主机上进行更改时,vagrant不会实时同步它。

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

  • 操作系统:Linux Mint 18 Sarah
  • Virtualbox版本:5.0.24-dfsg-0ubuntu1.16.04.1
  • Vagrant版本:1.9.0
  • vagrant-hostmanager(1.8.5)
  • 流浪汉分享(1.1.6)
  • vagrant-vbguest(0.13.0)

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

我的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"
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:

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

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

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

有关如何启用实时同步的任何想法?

linux vagrant virtualbox vagrantfile synced-folder
4个回答
7
投票

该框的所有者默认情况下在同步类型上启用了rsync。如果你查看你的盒子的Vagrantfile(在我的情况下它的~/.vagrant.d/boxes/centos-VAGRANTSLASH-7/0/vmware_fusion,但你的可能在虚拟机提供者下),你会看到一个包含内容的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

0
投票

你可以使用rsync-auto命令:

vagrant rsync-auto

实际上,当我遇到同步问题时,添加type: nfs帮助我:

config.vm.synced_folder ".", "/home/ubuntu/qb-online", type: "nfs"

您可以从文档中阅读更多信息:https://www.vagrantup.com/docs/synced-folders/rsync.html


0
投票
Vagrant.configure("2") do |config|
  config.vm.synced_folder ".", "/vagrant", type: "nfs",
  rsync__exclude: ".git/"
end

只需使用 Vagrant.configure("2") do |config| #place here end 内的第2和第3行


0
投票

如果任何人正面临这个问题vbox“同步/挂载”只需输入流浪汉文件没有流浪的Vagrant ssh并运行命令“sudo yum upgrade”dat'd一旦它完成就退出流浪者并点击再次流浪。问题将得到解决。 .. :)

并确保如果您正在使用Centos,请在您的VagrantFile List项目中使用“Bento / Centos”

  1. 流浪汉ssh
  2. sudo yum升级
  3. 流浪汉重装
© www.soinside.com 2019 - 2024. All rights reserved.