假设我在系统上有一个虚拟机。该机器的内存布局将取决于它的使用情况和启动方式。
现在,如果我保存机器的状态,然后将其复制到不同的系统上,是否可以保证环境相同?
进一步来说:
如果虚拟机在系统 A 上暂停,复制到系统 B,然后在系统 B 上恢复,是否可以保证内存布局保持不变?
请注意,我谈论的内存布局是客户系统的内存布局,不是主机系统。主机系统的环境几乎肯定会有所不同。但考虑到虚拟机将拥有自己的环境,这种功能似乎很有可能实现。
答案1
如果您使用 VMware Workstation 创建了虚拟机,并想将其移动到另一台计算机,或者甚至主机上的其他地方,该怎么办?这个过程并不困难,在大多数情况下,您甚至可以将虚拟机从 Windows 主机移动到 Linux 主机 - 反之亦然。就是这样。
注意:这些说明假设您正在使用虚拟磁盘 - 存储在主机上的一组 .vmdk 文件中。
在开始这样的过程之前,最安全的做法是备份虚拟机文件夹(目录)中的所有文件。
- 虚拟机使用相对路径
准备虚拟机以进行移动
关闭客户操作系统并关闭虚拟机。如果虚拟机已挂起且其虚拟磁盘处于持久或非持久模式,请恢复虚拟机,然后关闭客户操作系统。
如果您的虚拟机正在使用处于可撤消模式的磁盘,最好在客户机操作系统关闭时提交或放弃更改。如果您无法提交或放弃对磁盘的更改,请阅读在可撤消模式下移动磁盘的注意事项。
注意:如果您的磁盘使用的是非持久模式,您还必须将重做日志 (.REDO) 文件移动到新的主机。默认情况下,它位于主机操作系统的临时目录中。请执行以下操作之一:
If you are moving the virtual machine to a new host and have a network connection between the original host machine and the new host, you are finished with the preparations on the original host. Otherwise, you need to have a way of moving the virtual disk (.vmdk) files from the virtual machine's directory to the new host. You could move them to a shared network directory, for example, or burn them to CD-ROMs if they are not too large.
一旦您知道如何移动虚拟机,请转至将虚拟机移动到新主机。
If you are moving this virtual machine to another directory on this host, then you are ready to make the move. Copy all the files in the virtual machine's original directory to the new location. If you stored any files in directories other than the virtual machine directory, be sure to move them into a directory of the same name and same position relative to the location of the virtual machine.
- 将虚拟机移至新主机
确保 VMware Workstation 在新主机上安装并正常运行。
找到要移动的虚拟磁盘文件并将其复制到新的虚拟机目录中。确保复制虚拟机原始目录中的所有文件。如果您将任何文件存储在虚拟机目录以外的目录中,请确保将它们移动到与虚拟机位置相同的同名且位置相同的目录中。
如果由于某种原因您不移动文件,请确保您没有任何指向文件的相对或绝对路径。使用配置编辑器检查虚拟机是否指向您不移动的文件的正确位置。
另外,请检查是否存在指向您正在移动的任何文件的绝对路径。
要确定任何文件是否使用绝对路径或相对路径,请使用配置编辑器。选择每个设备。另外,查看重做日志文件的位置。
注意:如果您的虚拟机正在使用处于可撤消模式的磁盘,最好在客户操作系统关闭时提交或放弃更改。如果您无法提交或放弃对磁盘的更改,请阅读在可撤消模式下移动磁盘的注意事项。启动 VMware Workstation 并打开您刚创建的新虚拟机。选择文件 > 打开,然后浏览到虚拟机的配置文件。虚拟机将添加到 Workstation 窗口中的虚拟机名称列表中。