代码之家  ›  专栏  ›  技术社区  ›  Chris Bloom

关闭不再配置的流浪箱

  •  3
  • Chris Bloom  · 技术社区  · 11 年前

    我最初创建了一个 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 也不要显示任何内容。

    2 回复  |  直到 11 年前
        1
  •  9
  •   Chris Bloom    11 年前

    结果发现 vagrant global-status 输出显示了一个红色的鲱鱼:它从 ~/.vagrant.d/data/machines-index/index 。没有任何进程使用 ps 命令(H/T to@CEPA),并且VirtualBox应用程序中似乎没有运行任何计算机。这也解释了为什么即使在重新启动后,它的状态仍然“运行”。跑步 vagrant global-status --prune 清理了文件,从而清理了全局状态报告。

        2
  •  2
  •   CEPA    11 年前

    当我有一个我无法与之沟通的模糊盒子时,我会终止这个过程。进程名称通常为 VBoxHeadless.exe 并且将在完整路径中包含名称,您可以在其中进行grep。 ps aux | grep -i vbox | grep [put name here]