使用synced_folder时,vagrant ssh失败

时间:2016-02-02 07:03:01

标签: vagrant

我想在vm中挂载一个相对于我的vagrant文​​件的本地目录。但是,当我这样做时,

  

vagrant ssh

不再有效 - 私钥失败。我不确定为什么ssh突然失败了。 救命? (如果重要:我正在尝试安装我的Java工件编译到的目录)。

# -*- mode: ruby -*-
# vi: set ft=ruby :


Vagrant.configure("2") do |config|
  # Use Ubuntu 14.04 Trusty Tahr 64-bit as our operating system
  config.vm.box = "ubuntu/trusty64"

  # Configurate the virtual machine to use 2GB of RAM
  config.vm.provider :virtualbox do |vb|
    vb.customize ["modifyvm", :id, "--memory", "1024"]
    vb.cpus = 1
  end

  config.vm.network :forwarded_port, guest: 8080, host: 8080
  config.vm.synced_folder "target/", "/home/vagrant"

end

1 个答案:

答案 0 :(得分:2)

当您尝试直接在VM中的/home/vagrant上进行同步时,您需要确保target目录包含.ssh

authorized_keys文件夹

当您vagrant up VM时,vagrant会为您创建此目录,但在浏览sync_folder部分时,它会将/home/vagrant中的所有内容替换为您的主机target/所以失去它以前创造的东西。

如果你真的想要在/home/vagrant上同步,你可以做的就是先没有同步地运行,将所有已创建的文件(.ssh /,.bash ...)复制到你的目标目录中然后你应该能够重新运行/ home / vagrant上的同步。 (注意:我没有尝试过,老实说不建议直接在/ home / vagrant上同步,就好像你从配置或其他安装其他软件一样,以后可能会遇到问题)