Vagrant 当一台机器仍在使用时,移动流浪者箱会发生什么?

Vagrant 当一台机器仍在使用时,移动流浪者箱会发生什么?,vagrant,virtualbox,Vagrant,Virtualbox,我有大约15台流浪机器。这些机器使用CentOS和Ubuntu作为基本设备。当我运行vagrant box list centos/7(virtualbox,1705.01) centos/7(virtualbox,1706.02) centos/7(virtualbox,1707.01) centos/7(virtualbox,1708.01) geerlingguy/centos7(虚拟箱,1.2.3) geerlingguy/ubuntu1604(virtualbox,1.1.6) 拉维

我有大约15台流浪机器。这些机器使用CentOS和Ubuntu作为基本设备。当我运行
vagrant box list


centos/7(virtualbox,1705.01)
centos/7(virtualbox,1706.02)
centos/7(virtualbox,1707.01)
centos/7(virtualbox,1708.01)
geerlingguy/centos7(虚拟箱,1.2.3)
geerlingguy/ubuntu1604(virtualbox,1.1.6)
拉维尔/家园(虚拟箱,3.0.0)
puppetlabs/centos-7.2-64-nocm(virtualbox,1.0.1)
ubuntu/precise64(virtualbox,20170427.0.0)
ubuntu/trusty64(virtualbox,20170615.0.0)
ubuntu/trusty64(virtualbox,20170619.0.0)
ubuntu/xenial64(virtualbox,20170802.0.0)
ubuntu/xenial64(virtualbox,20170815.1.0)
ubuntu/yakkety64(virtualbox,20170202.0.0)
ubuntu/zesty64(virtualbox,20170412.1.0)

在尝试修剪时,我收到了一些消息,表示某些框正在使用中,如果我删除该框,我的环境将被破坏

如果删除所有框,现有机器会发生什么情况

我通过使用centos/7-1708.01创建新机器进行了测试

  • 已安装的
    whois
    vim
  • 在主文件夹中创建了一个虚拟文件
  • 停止机器
  • 使用
    vagrant box删除了box删除centos/7--提供程序virtualbox--box版本1708.01
  • 开始使用Wagrant up,机器启动时没有任何问题
它仍然有我安装的软件包和我创建的文件

我对ubuntu/xenial64做了同样的测试

  • 使用最新的box版本创建了一台计算机
  • 安装了新的软件包和几个文件
  • 停止机器
  • 删除了ubuntu/xenial64的最新版本
  • 再次启动机器
我仍然可以看到我安装的软件包和文件

若删除框不会影响现有机器,那个么为什么会出现关于环境被破坏的消息

我的理解是,在我使用一个盒子来创建机器之后,vagrant并不关心盒子是否存在,因为机器现在在virtualbox中

我试图浏览文档,但找不到我要的信息。 你能解释一下流浪汉的整个工作流程吗?

你说得对

基本上,当您运行
vagrant up
vagrant时,它正在克隆该框以创建一个新的实例VM。创建此VM后,它没有指向克隆(原始框)的链接,因此如果删除该框,则不会影响生成的VM

如果需要销毁并重新创建VM,则会出现问题


如果您正在使用,它的工作原理会稍有不同。在这种情况下,它与长方体的依赖性更强。

谢谢。这意味着只有当我无法下载这个盒子并想要重新创建虚拟机时,我才会有问题。我在virtualbox中使用过链接克隆,但从未在vagrant中使用过。