Ubuntu虚拟机迁移至另一台机器的方法因虚拟机软件而异,以下是常见工具的迁移步骤:
一、VirtualBox迁移
- 准备文件
将虚拟机的.vdi(磁盘文件)、.vbox(配置文件)和.vbox-prev(快照文件,如有)复制到目标机器。 - 修改配置
在目标机器上用文本编辑器打开.vbox文件,修改标签内的uuid和的uuid,使其与原文件一致。 - 注册磁盘
- 打开VirtualBox,右键虚拟机→“设置”→“存储”,移除原有虚拟磁盘,添加新复制的
.vdi文件。 - 若有快照,需在“虚拟介质管理器”中注册所有快照文件。
- 打开VirtualBox,右键虚拟机→“设置”→“存储”,移除原有虚拟磁盘,添加新复制的
- 启动验证
启动虚拟机,检查网络、IP配置是否正常(可能需要修改/etc/netplan/或/etc/network/interfaces)。
二、VMware迁移
- 导出为OVF
在VMware中右键虚拟机→“导出为OVF”,保存为.ova或.ovf文件。 - 导入目标机器
在新机器的VMware中选择“文件”→“导入虚拟电脑”,选择导出的OVF文件完成导入。 - 调整网络
若网络不通,需在虚拟机内执行以下命令重启网络:sudo service network-manager stop sudo rm /var/lib/NetworkManager/NetworkManager.state sudo service network-manager start或通过
dhclient获取IP。
三、KVM迁移(需共享存储或网络)
- 静态迁移
- 确保源和目标机器安装KVM工具(
sudo apt install qemu-kvm libvirt-daemon-system)。 - 将虚拟机磁盘文件(如
.qcow2)和配置文件(XML)复制到目标机器的相同路径,使用virsh define注册虚拟机。
- 确保源和目标机器安装KVM工具(
- 动态迁移(需NFS/SAN)
- 配置NFS共享存储,将虚拟机磁盘文件存放在共享目录。
- 使用
virsh migrate命令迁移虚拟机,无需停机。
注意事项
- 网络配置:迁移后需检查IP是否冲突,可通过
ip a或ifconfig查看,必要时修改/etc/netplan/或/etc/network/interfaces。 - 权限问题:确保目标机器的用户对虚拟机文件有读写权限。
- 工具兼容性:不同虚拟机软件的配置文件格式可能不同,优先使用原生导出导入功能。
根据使用的虚拟机软件选择对应方法,操作前建议备份重要数据。