我在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
我得到的错误:在您的PATH上找不到"rsync".确保在系统上正确安装了rsync,并且可以在PATH上使用.
为什么Vagrant会因为我使用Virtualbox而寻找rsync?我该如何解决此错误?
我在另一个论坛中发现本地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"
并且错误已解决
我在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.
好像是一个bug.你可以在这里报告.但似乎您的错误已被报告为问题6631.
不过,您可以尝试添加rsync
到您的PATH
并检查结果.你可以用两种方式做到:
安装Cygwin,然后vagrant up
从Cygwin终端启动
下载并解压缩cwRsync
首先,这不是 Windows上预期的行为错误,因为Windows上没有rsync.
如果您遇到此问题并希望使用rsync作为同步文件夹的机制,则应该:
从https://mingw-w64.org/doku.php/download/cygwin下载Cygwin
使用rsync + openssh模块安装Cygwin .重要的是因为它们基于Window(您可以在Select软件包阶段选择要在安装期间安装的软件包)
将x:\ cygwin\bin添加到SYSTEM PATH,其中'x'是已安装cygwin发行版的驱动器.
重启PC(Windows 10不需要)
就这样.
感谢您的关注,祝您有个愉快的一天:-)