Virtualbox 在vagrant中创建多个框时,为什么需要位于指定目录中

Virtualbox 在vagrant中创建多个框时,为什么需要位于指定目录中,virtualbox,vagrant,Virtualbox,Vagrant,我试图创建多个框,让流浪汉在写作时加载 vagrant up kali vagrant up metasploitable2 我设置的配置是 在Kali Vagrant文件中 Vagrant.configure("1") do |config| config.vm.define "kali" do |kali| kali.vm.box = "Kali" end end 在Metasploitable2中 Vagrant.configure("1") do |config| config.

我试图创建多个框,让流浪汉在写作时加载

vagrant up kali
vagrant up metasploitable2
我设置的配置是

在Kali Vagrant文件中

Vagrant.configure("1") do |config|

config.vm.define "kali" do |kali|
kali.vm.box = "Kali"
end
end
在Metasploitable2中

Vagrant.configure("1") do |config|

config.vm.define "metasploitable2" do |metasploitable2|
metasploitable2.vm.box = "metasploitable2"
end
end
如果我浏览到.vmdk和vagrant文件所在的目录并说

vagrant up kali 
它创建kali映像,但是如果我不在目录中,它将不会加载VM

有一个错误:

The machine with the name 'kali' was not found configured for
this Vagrant environment.

我想这是因为它无法读取配置文件,但我如何才能使其全局化,因为我认为您根本不应该修改“全局”Vagrant文件。

嗯,Vagrant必须找到Vagrant文件才能读取它,不是吗?=)

因此,您必须位于同一目录或其下的任何子目录中。或者您可以将
VAGRANT\u CWD
环境变量设置为指向目录。有关详细信息,请参阅中的“查找路径”部分

当然,如果需要经常使用,您可以制作包装脚本或其他快捷方式


顺便说一句,您可能需要升级Vagrant文件以使用Vagrant 1.1+的所有新功能。

我认为Vagrant是另一回事,您可以对多个项目使用“基本”框,并使用Vagrant文件指定要在该框中配置/安装的内容。。为环境变量干杯!哦,哇,我也没有意识到Vagrant.configure(“2”)do | config |实际上是在指定版本,我以为这是在说有多少个盒子。。。哈哈,这不是我最好的一天。谢谢你的回答。