Virtualbox && Vagrant 迁移与恢复
window10电脑重新安装C盘。重装前正常使用的VirtualBox虚拟机,启动失败,先是启动报各种找不到文件的错误,使用原来的虚拟机配置文件虽然能正常启动,但是关闭虚拟机后,xxx.vbox配置文件的快照顺序又被自动清掉,导致又不能正常使用。折腾了好久,特此记录一下。
文章目录
- 前 言
- 恢复过程
- 1、备份文件:
- 2、重新安装Virtualbox后,将 `VirtualBox.xml`文件拷贝覆盖原文件
- 3、Virtualbox界面,选择"管理——虚拟介质管理器",手动添加注册虚拟介质
- 4、Virtualbox界面,选择"控制-注册”,注册虚拟机
- 5、Virtualbox界面,选择"设置——存储 & 系统启动顺序 "【缺少这步,启动虚拟机会报错[FATAL:NO bootable medium found!System halted.](https://www.cnblogs.com/yabingshi/p/3912532.html)】
- 6、启动虚拟机成功
- 7、恢复 `vagrant up `方式启动虚拟机
前 言
window10电脑重新安装C盘。重装前正常使用的VirtualBox虚拟机,启动失败,先是启动报各种找不到{uuid.vmdk}
文件的错误,使用原来的虚拟机配置文件虽然能正常启动,但是关闭虚拟机后,xxx.vbox
配置文件的快照顺序又被自动清掉,导致又不能正常使用。 折腾了好久,特此记录一下。
恢复过程
1、备份文件:
- 备份C盘VirtualBox.xml全局配置文件,比如我的目录:
C:\Users\HZL\.VirtualBox\VirtualBox.xml
- 备份虚拟机文件,比如我的:
E:\Program Files (x86)\Oracle\VirtualBox VMs\HZL_default_1591694534017_91720\
- 如果使用
vagrant up
的方式启动的VirtualBox,则还需要备份C:\Users\HZL\.vagrant
和
C:\Users\HZL\.vagrant.d
和
C:\Users\HZL\.Vagrantfile
vagrant 配置文件
2、重新安装Virtualbox后,将 VirtualBox.xml
文件拷贝覆盖原文件
C:\Users\HZL\.VirtualBox
C:\Users\HZL\.vagrant
C:\Users\HZL\.vagrant.d
3、Virtualbox界面,选择"管理——虚拟介质管理器",手动添加注册虚拟介质
注意: 有快照的话,需要按照层级先后顺序,依次注册。如果不记得顺序的话,顺序可以参考 “HZL_default_1591694534017_91720.vbox
”配置文件或者
C盘的VirtualBox.xml
全局配置文件,里面有写原来的介质顺序。
类似这样:
按照顺序注册添加后,直接点击关闭(不要点“刷新”,否则白填),效果如下:
注册时完成,示意图如下,状态显示“已关闭”,右侧注册的快照信息正常显示,代表成功。
(我之前缺少了注册的这一步,导致我的虚拟机只能正常启动一次,等关闭了虚拟机后,我的“HZL_default_1591694534017_91720.vbox
”配置文件快照顺序,就会被覆盖掉,丢失了快照绑定顺序就报错各种找不到{uuid.vmdk}
,导致启动不了。"xxx.vbox"配置文件注释也说明了,不要手动修改该文件,还是要以图形化界面管理来自动修改xxx.vbox
配置文件比较好靠谱,所以这一步不能缺少。)
4、Virtualbox界面,选择"控制-注册”,注册虚拟机
如果你有提前打开VirtualBox.xml
文件,注册完成之后,你就会发现此时C:\Users\HZL\.VirtualBox\VirtualBox.xml
VirtualBox.xml全局配置文件也会随之修改更新。
5、Virtualbox界面,选择"设置——存储 & 系统启动顺序 "【缺少这步,启动虚拟机会报错FATAL:NO bootable medium found!System halted.】
左侧选中某个虚拟机,点击“设置”,进入虚拟机设置图形化界面,存储——控制器——添加。
选中,刚才注册添加的虚拟介质硬盘
我这里添加绑定了2块虚拟硬盘
设置 ——系统 ,设置系统启动加载顺序。VirtualBox默认光盘、软盘启动优先,建议:设置为硬盘启动优先。
6、启动虚拟机成功
配置完成以上步骤以后,就算完成了,就算反复重启虚拟机,也能正常启动,关键还是图形化界面把快照和介质相关的信息固定到了
“HZL_default_1591694534017_91720.vbox
”和C:\Users\HZL\.VirtualBox\VirtualBox.xml
文件中。
7、恢复 vagrant up
方式启动虚拟机
- 安装 vagrant
- 拷贝并覆盖
C:\Users\HZL\.vagrant
C:\Users\HZL\.vagrant.d
C:\Users\HZL\.Vagrantfile
vagrant 配置文件
如果没有覆盖这些文件,你如果直接用vagrant up
命令在新的机器启动,你会发现启动的是新的虚拟机示例,而没有跟你原来的虚拟机绑定。这是因为每个虚拟机实例id都是唯一的,配置文件、免密登录的秘钥等配置就在这三个文件内。
# 启动默认的虚拟机
$ vagrant up
# 启动指定虚拟机
$ vagrant up web1
# 关闭指定虚拟机
$ vagrant halt web1
更多推荐
所有评论(0)