我想在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
答案 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上同步,就好像你从配置或其他安装其他软件一样,以后可能会遇到问题)