修改VirtualBox虚拟机vdi备份路径及迁移原vdi

使用virtualbox有段时间了,总是遇到迁移问题,今天用心操作了一次,做一个详细的记录

修改默认安装路径

在安装完虚拟机以后发现我的虚拟的磁盘文件是放在C盘的,就想着有没有办法修改默认存储路径。后来发现确实可以修改,修改虚拟机方法如下:“管理”--->“全局设定”,然后手工修改虚拟存储位置即可,如图:

迁移已有虚拟机

假设我们原有的存储文件VDI放在C:\Users\wei.xu\VirtualBox VMs\SCADA_Temp\SCADA_Temp.vdi,当前我要将其迁移到目录下,那么我只需要将.vdi文件拷贝到这个目录,然后执行以下命令:

D:\Program Files\Oracle\VirtualBox>VBoxManage internalcommands sethduuid "D:\VM\VM_vdi\mySQL_copy\mySQL_copy.vdi"
UUID changed to: bfd5674e-f134-4b35-89c2-1a5e15fbf8d7

注:1.红色部分为virtualbox安装目录,其中VBoxManage为可执行程序,我在自己电脑直接运行会出现以下错误:

       

       个人理解为需要设置环境变量,后来直接进入到VirtualBox目录下,然后执行命令:

       VBoxManage internalcommands sethduuid "D:\VM\VM_vdi\mySQL_copy\mySQL_copy.vdi"

       2.黑色部分固定不变

       3.蓝色部分为虚拟硬盘存放的位置(目录)

       4.绿色部分为操作后的显示结果,运行命令是不需要输入,是用来检测命令是否运行成功的

执行完上述命令以后,在virtualbox中新建虚拟机,关联上这个vdi文件即可,如下图所示

如果不执行上述sethduuid这个命令的话,在管理vdi文件的时候会报错,报错如下:


<think>好的,我现在需要帮助用户解决如何将现有的VirtualBox7.0虚拟机迁移到新磁盘的问题。用户之前已经询问过如何安装到其他盘,现在进一步想迁移虚拟机到新磁盘。我需要结合之前的回答和提供的引用内容来给出解决方案。首先,回顾用户的历史问题,之前我指导了如何安装VirtualBox到非系统盘以及修改默认存储路径。现在用户需要迁移现有的虚拟机到新磁盘,这可能涉及到虚拟机文件的位置移动或克隆。接下来,查看用户提供的站内引用。引用[1]提到将VDI文件导入VMware ESXi,可能需要格式转换,但用户的问题是关于VirtualBox自身的迁移,所以这可能不是直接相关,但里面的VDI文件操作可能有参考价值。引用[2]提到了使用VBoxManage命令克隆虚拟机修改UUID,这直接关联到克隆和修改磁盘路径,应该是关键信息。 用户的需求是将虚拟机从一个磁盘迁移到另一个磁盘,比如从C盘移到D盘。我需要分步骤说明如何操作,可能需要关闭虚拟机、复制文件、修改配置文件或使用命令行工具。需要注意的关键点:1.关闭虚拟机以确保文件不被占用。2.复制虚拟机文件到新位置,包括VDI和其他配置文件。 3.更新VirtualBox的注册信息,可能需要使用VBoxManage工具。 4.处理可能的UUID冲突,引用[2]中的sethduuid命令可以解决。5.修改虚拟机存储设置,指向新路径。 另外,用户可能希望保留虚拟机的配置,所以需要指导如何正确迁移而不仅仅是重新创建。可能还需要验证迁移后的虚拟机是否正常运行,以及处理权限问题。 现在需要将这些步骤整理成清晰的结构,包括关闭虚拟机、复制文件、注册新位置、修改UUID等。同时,引用[2]中的命令示例需要正确应用,确保用户能顺利执行。此外,可能需要提醒用户注意路径是否正确,是否有足够的空间,以及如何处理快照或差分磁盘等问题。 最后,生成相关问题,可能涉及迁移后的验证、处理快照、使用命令行工具的其他功能等。</think>### 将现有VirtualBox虚拟机迁移到新磁盘的方法(VirtualBox 7.0) #### **步骤1:关闭虚拟机并定位文件** 1. 在VirtualBox界面中**彻底关闭**目标虚拟机(非暂停状态)。 2. 找到虚拟机文件存储路径: - 右键虚拟机 > **设置 > 存储**,查看`.vdi`虚拟磁盘文件的位置。 - 默认路径通常为`C:\Users\<用户名>\VirtualBox VMs\<虚拟机名>`,包含`.vdi`、`.vbox`等文件[^2]。 #### **步骤2:复制虚拟机文件到新磁盘** 1. 将整个虚拟机文件夹(如`<虚拟机名>`)**完整复制**到新磁盘的目标路径(例如`D:\VirtualBox_VMs`)。 2. 确保新路径满足以下条件: - 剩余空间大于文件总大小 - 路径不含中文或特殊字符(推荐全英文路径) - 权限允许当前用户读写(右键文件夹 > **属性 > 安全**中检查) #### **步骤3:重新注册虚拟机** 1. **删除旧虚拟机**(仅删除注册信息,不删除文件): - 右键虚拟机 > **移除**,选择**仅删除机器**。 2. **导入新虚拟机**: - 点击菜单**控制 > 注册**,选择新路径下的`.vbox`配置文件。 - 或使用命令行注册: ```bash VBoxManage registervm "D:\VirtualBox_VMs\<虚拟机名>\<虚拟机名>.vbox" ``` #### **步骤4:处理虚拟磁盘UUID冲突(可选)** 若迁移后出现UUID冲突错误(如`VERR_VD_IMAGE_READ_ONLY`),需修改虚拟磁盘UUID: 1. 打开命令行工具,进入VirtualBox安装目录(例如`C:\Program Files\Oracle\VirtualBox`)。 2. 执行以下命令(替换实际路径): ```bash VBoxManage internalcommands sethduuid "D:\VirtualBox_VMs\<虚拟机名>\<磁盘名>.vdi" ``` 此操作会生成新的UUID以解决冲突[^2]。 #### **步骤5:验证迁移结果** 1. 启动迁移后的虚拟机,检查系统是否正常。 2. 确认虚拟机的**存储设置**中所有文件路径均指向新磁盘位置: - 进入**设置 > 存储**,检查控制器下的`.vdi`文件路径。 3. 若存在快照(snapshot),需一并迁移其关联的差分磁盘文件(如`.vdi`)。 --- ### **常见问题解决** - **权限不足**:对新路径的文件夹赋予当前用户**完全控制权限**(右键文件夹 > 属性 > 安全 > 编辑)。 - **文件占用导致复制失败**:彻底关闭VirtualBox进程或重启系统后操作。 - **路径错误**:使用`VBoxManage list hdds`命令查看所有已注册虚拟磁盘的路径[^2]。 --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值