如何将 Vagrant 虚拟机重置为原始状态

正如你可能已经, 流浪汉 是一个开源应用程序,用于构建和维护虚拟软件开发环境。 您可以使用预先配置的 Vagrant box 快速启动虚拟机,并将相同的 Vagrant box 复制到其他系统以部署当前开发环境的精确副本。 一旦你完成了你的开发环境的探索,你可以简单地将 Vagrant 机器重置回它的原始默认状态。 所以你不必一遍又一遍地下载同一个 Vagrant 盒子。

将 Vagrant 虚拟机重置为原始状态

出于本指南的目的,我下载了 Oracle Linux 8 Vagrant box 并使用该 box 创建了一个 VM。 此 VM 的默认用户名和主机名是 vagrantlocalhost 分别。

在 Oracle Linux VM 中显示用户名和主机名

让我们更改这些值。 我已按照中所述更改了用户名和主机名 本指南.

现在我现在的用户名是 ostechnix 和主机名是 ol8.

$ whoami ostechnix
$ hostname ol8
在 Oracle Linux 中显示用户名和主机名

让我们安装任何软件,例如 nano 编辑。

$ sudo dnf install nano

验证是否 nano 是否安装使用命令:

$ dnf list nano
验证包是否安装在 Oracle Linux 中验证包是否安装在 Oracle Linux 中

在虚拟机中做任何你想做的事。

在您探索虚拟环境之后,如果您不再需要它,只需擦除它并重新创建一个干净的虚拟环境。

在将 Vagrant 机器重置为默认状态之前,请备份您的工作,然后关闭 VM:

# poweroff

您还可以从主机名系统中使用以下命令来关闭 vagrant 虚拟机:

$ vagrant halt

验证 VM 是否正在运行:

$ vagrant status

示例输出:

Current machine states:  default                   shutoff (libvirt)  The Libvirt domain is not running. Run `vagrant up` to start it.

虚拟机已关闭。

现在我们将使用命令将 Vagrant 框重置为原始状态:

$ vagrant destroy

示例输出:

$ vagrant destroy     default: Are you sure you want to destroy the 'default' VM? [y/N] y ==> default: Removing domain...
将 vagrant 虚拟机重置为其原始状态将 vagrant 虚拟机重置为其原始状态

destroy 命令将停止正在运行的虚拟机(如果它已经在运行)并将其连同在虚拟机创建过程中创建的所有资源一起销毁。 现在您的主机系统应该保持干净状态,就好像您从未创建过访客机器一样。

请注意,上述命令不会破坏创建VM时已下载的vagrant box。 供您参考,所有流浪箱都存储在 ~/.vagrant.d/boxes/ 在您的系统中的位置。 让我们验证一下 ls 命令:

$ ls ~/.vagrant.d/boxes/ fedora33  oraclelinux-VAGRANTSLASH-7 Fedora33  oraclelinux-VAGRANTSLASH-8

是的,所有盒子都可用。 我们只删除了使用 vagrant box 创建的 VM。

停止并销毁 VM 后,运行以下命令以创建新的新虚拟机:

$ vagrant up --provider=libvirt

在这里,我使用 vagrant box libvirt/kvm 提供者。

如果您已经为 Oracle Virtualbox 下载了 Vagrant box,则不必指定 --provider=libvirt 选项。 只需使用此命令:

$ vagrant up

完毕! 流浪机器已重置为其默认的原始状态。 虚拟机中的所有自定义和安装的软件都将消失。 您现在应该拥有一个全新的虚拟机。

登录 Oracle Linux vagrant 虚拟机登录 Oracle Linux vagrant 虚拟机

正如你在上面的例子中看到的,我没有删除 Oracle Linux 8 Vagrant box 并重新下载它。 从官方网站下载 Vagrant VM 时,我只是将其重置为原始状态。

希望这可以帮助。

DevOpsLinuxVagrantVagrant box虚拟机虚拟化