有没有办法在退出时擦除 VirtualBox 驱动器?

有没有办法在退出时擦除 VirtualBox 驱动器?

在 VirtualBox 中,有没有办法在退出/关闭客户操作系统时擦除该操作系统的虚拟驱动器?

如果没有的话,有没有其他方法可以达到该目标而无需手动操作?

答案1

如果您想在每次启动时将 VirtualBox 虚拟机重置为“全新”操作系统,最简单的方法是安装操作系统并根据需要进行配置,然后将磁盘设置为“不可变”:

  1. 从 VirtualBox 管理器中,选择“文件”->“虚拟媒体管理器”。
  2. 选择您的虚拟机的虚拟磁盘映像。
  3. 点击“修改”。
  4. 选择“不可变”并单击“确定”。

现在,每次启动虚拟机时,磁盘都会重置为当前状态。您可以通过拍摄虚拟机快照暂时暂停启动时重置;删除快照将恢复重置行为。

请注意,此操作在启动时进行,而不是在关机时进行。如果您出于反取证原因进行清除,则需要寻找其他选项。

答案2

我的朋友,两个词,“Live CD”。

如果您在使用之间不打算保留任何东西,那为什么还要费心使用驱动器呢?许多版本的 Linux 都附带完整操作系统的 LiveCD 版本,您可以随心所欲地使用它们。关闭/终止虚拟机,所有这些都会消失,正如您想要的那样。

根本不需要创建虚拟磁盘。只有当您的主机操作系统将部分内存交换到您的页面文件时,它才会写入硬盘驱动器(但那是另一个问题)。

如果您认为实时 CD 会因为 CD 读取速度而变慢?请不要将其刻录到 CD 上。从硬盘驱动器运行 ISO,其读取速度与硬盘驱动器相同。

答案3

虽然你不是 100% 清楚你使用的是什么操作系统,甚至不清楚设置的主要目的是什么,但如果你使用虚拟盒已经使用它,并且你需要一个干净的客户操作系统,为什么不使用流浪汉编写构建、控制甚至销毁系统的脚本。

例如,在最基本的层面上,您可以执行以下操作来创建初始客户操作系统。在此示例中,它创建了 Ubuntu 14.04:

vagrant init ubuntu/trusty64

这将下载用于创建 Vagrant box 的初始系统映像,该映像基本上只是一个 VirtualBox。下载完成后,只需运行此命令即可启动系统:

vagrant up

像这样连接到客户操作系统:

vagrant ssh

像这样停止 Vagrant 实例:

vagrant halt

然后——满足您需求的关键——就是运行这个命令来销毁 Vagrant 盒子:

vagrant destroy

由于您的系统已经下载了 Vagrant 镜像ubuntu/trusty64,因此您可以vagrant up再次运行。

这是最基本的设置。但 Vagrant 的优点在于,您可以轻松创建配置脚本,每次构建机器时都可以自定义它。这样,您无需创建“原始”客户操作系统,每次通过 启动系统时都可以自定义它以满足您的需求vagrant up。完成后,vagrant destroy系统的所有痕迹都会消失。

你要知道,vagrant destroy它不会“擦除”虚拟硬盘,而是删除文件。但说实话,如果虚拟磁盘映像可以删除并根据需要重新创建,那么“擦除”虚拟磁盘映像有什么好处呢?

相关内容