我最初创建了一个配置默认框的Vagrantfile
。后来,我更新了Vagrantfile
以使用具有略微不同配置的命名框(“db”)。不幸的是,在我配置新盒子之前,我忘了暂停初始盒子。现在有一个流氓流浪汉在后台运行,即使在重启主机后也无法停止。
$ vagrant global-status
id name provider state directory
---------------------------------------------------------------------------------------------------------------
6b855b0 default virtualbox running /Users/chrisbloom7/Projects/rails-upgrade
d348c3b db virtualbox poweroff /Users/chrisbloom7/Projects/rails-upgrade
$ vagrant halt -f 6b855b0
The machine with the name 'default' was not found configured for
this Vagrant environment.
$ cat Vagrantfile
Vagrant.configure(2) do |config|
config.vm.box = "ubuntu/trusty64"
config.vm.define "db", primary: true do |db|
db.vm.provider :virtualbox do |vb|
vb.name = "rails-upgrade-development-mysql"
end
# ...
end
end
$ git show HEAD^:Vagrantfile
Vagrant.configure(2) do |config|
config.vm.box = "box-cutter/ubuntu1004"
config.vm.provider :virtualbox do |vb|
vb.name = "rails-upgrade-development"
end
# ...
end
我已经检查过VirtualBox,但是我没有看到任何正在运行的框。 ps aux | grep vagrant
和ps aux | grep virtualbox
也没有显示任何内容。
答案 0 :(得分:8)
结果显示vagrant global-status
输出显示红色鲱鱼:它从~/.vagrant.d/data/machines-index/index
读取所有计算机的状态。确实没有机器运行,因为没有使用ps
命令(H / T到@CEPA)显示任何进程,并且VirtualBox应用程序中似乎没有运行任何机器。这也解释了为什么即使重启后它的状态仍然“正在运行”。运行vagrant global-status --prune
会清除文件,从而清除全局状态报告。
答案 1 :(得分:1)
当我有一个我无法与之交流的Vagrant盒子时,我会杀死这个过程。进程名称通常为VBoxHeadless.exe
,并且名称将在完整路径中,您可以在其中进行grep。 ps aux | grep -i vbox | grep [put name here]