我在Windows 7系统上使用Vagrant一段时间了。现在,我已经安装了一台带有Windows 10的新PC。我安装了Oracle Virtual Box和Vagrant,并尝试使用命令vagrant启动一台机器。 Vagrantfile与我在Windows 7系统上使用的文件相同。 这是Vagrantfile的内容:
Vagrant.configure(2) do |config|
config.vm.box = "debian/jessie64"
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--memory", "768"]
end
config.vm.provision :shell, path: "bootstrap.sh"
config.vm.network :private_network, ip: "172.27.146.17"
config.vm.hostname = "www.delevensstijl.hst1.nl"
config.hostsupdater.aliases = ["www.thelifestylemethod.hst1.nl"]
end
我得到的错误:" rsync"在你的PATH上找不到。确保在系统上正确安装了rsync,并且可以在PATH上使用。
为什么Vagrant会因为我使用Virtualbox而寻找rsync? 我该如何解决此错误?
答案 0 :(得分:158)
我在另一个论坛中发现本地Vagrant目录通过rsync挂载为“/ vagrant”。这是在框中设置的,您可以通过打开
进行检查C:\用户\ {your_username} \ vagrant.d \盒\ Debian的VAGRANTSLASH-jessie64 \ 8.2.2 \的virtualbox \ Vagrantfile
并查看设置
config.vm.synced_folder \
".",
"/vagrant",
type: "rsync"
为了解决这个问题,我在本地Vagrantfile中添加了以下行
config.vm.synced_folder ".", "/vagrant", type: "virtualbox"
并且错误已解决
答案 1 :(得分:38)
在Windows 7上使用cent / 7时,我已经解决了这个问题。
选中C:\ Users [用户名] \ .vagrant.d \ boxes \ centos-VAGRANTSLASH-7 \ 1602.02 \ virtualbox \ Vagrantfile
中的synced_folder框config.vm.synced_folder ".", "/home/vagrant/sync", type: "rsync"
在项目Vagrantfile中覆盖目录映射的定义。
config.vm.synced_folder ".", "/home/vagrant/sync", type: "virtualbox"
我想这个盒子可能是在非Windows系统上准备的,这种情况可能发生在很多盒子上,比如fedora / 23-cloud-base。
答案 2 :(得分:11)
好像是一个错误。您可以报告here。但似乎您的错误已被报告为issue 6631。
然而,您可以尝试将rsync
添加到PATH
并检查结果。你可以用两种方式做到这一点:
答案 3 :(得分:9)
首先,这个不是错误它是Windows上的预期行为,因为Windows上没有rsync。
如果您遇到此问题并且想要使用rsync 作为同步文件夹的机制,您应该:
这就是全部。
感谢您的关注并度过了愉快的一天: - )
答案 4 :(得分:4)
在Windows7上使用Vagrant / VirtualBox(5.06)和Atlas的centos / 7框:在路径上找不到rsync。所以,我按照建议通过cygwin安装(还有其他东西要安装,包括openssh)。没有快乐。尝试将共享文件夹配置更改为" virtualbox"而不是" rsync"。没有快乐。哦,忘了检查VirtualBox客户添加内容是否在框中:它们不是。 Rsync工作得很好,但最后还是chocked(不能chdir到共享文件夹的源目录)。但是,"类型:virtualbox"配置确实有效!
所以数据点是:centos / 7,添加了访客添加,共享文件夹类型设置为" virtualbox" (在Windows 7上覆盖框设置)。
在MacOS上开箱即用(没有任何更改,没有添加客人)。
答案 5 :(得分:2)
我在Windows 10上遇到了同样的问题。删除以下行有助于我解决问题
目录:C:\ Users \ xxxxxxxxxxxxx.vagrant.d \ boxes \ manageiq-VAGRANTSLASH-euwe \ 5.1.0 \ virtualbox
文件:VagrantFile
删除行:config.vm.synced_folder“。”,“/ home / vagrant / sync”,输入:“rsync”
后续步骤:
保存文件 打开cygwin终端 去流浪者目录 运行“vagrant up”
答案 6 :(得分:1)
我能够使用另一个bos解决这个问题 C:\用户{your_username} .vagrant.d \盒\框\的子文件夹\的virtualbox \ Vagrantfile
并添加
# Load include vagrant file if it exists after the auto-generated
# so it can override any of the settings
include_vagrantfile = File.expand_path("../include/_Vagrantfile", __FILE__)
load include_vagrantfile if File.exist?(include_vagrantfile)
答案 7 :(得分:1)
我已经尝试了上面的建议,但它没有帮助。我使用Windows 7,vagrant 1.9.1 作为vm盒我使用centos 7而没有安装guest虚拟机。
vm.box = "centos/7"
要解决此问题,请将“vm.box”清除为预先添加了guest虚拟机的框,例如
vm.box = "geerlingguy/centos7"
并确保没有安装vbguest插件,因为出现了另一个错误
vagrant plugin list
vagrant plugin uninstall vagrant-vbguest