vm.provision "file" 不会将文件复制到来宾机器

问题描述

我想用

文件从主机复制到来宾机器
  Vagrant.configure("2") do |config|
    # ... other configuration
    config.vm.provision "file",source: ".sudoers",destination: "/etc/sudoers"
    config.vm.provision "file",source: ".pacman.conf",destination: "/usr/local/etc/pacman.conf"
    config.vm.provision "file",source: ".setup.sh",destination: "/home/vagrant/setup.sh"
  end

但这根本行不通! 在执行 vagrant up 时,不会向我显示错误输出。 VM 配置“文件”正好位于“安装共享文件夹”和“运行配置程序:shell”之间

enter image description here

如果我能提供任何信息,我会提供的!

解决方法

  • 您可以使用共享文件夹在您的主机和您的主机之间共享数据 VM,这是第一个解决方案。
  • 否则你可以像这样使用配置文件:
  Vagrant.configure("2") do |config|
    # ... other configuration
    config.vm.provision "file",source: "./sudoers",destination: "/etc/sudoers"
    config.vm.provision "file",source: "./pacman.conf",destination: "/usr/local/etc/pacman.conf"
    config.vm.provision "file",source: "./setup.sh",destination: "/home/vagrant/setup.sh"
  end

在您的情况下,错误与本地文件的路径有关。

希望这能帮助您解决问题。