VirtualBox通过恢复备份快照VDI文件恢复至备份状态

昨天很贱,看到服务器的VB的快照(SnapShot)是放在C盘的,然后C盘的35G空间被这个快照用掉了14G,加上系统的18G,还剩3G的空间。关闭VB,然后移动这个快照文件。结果整个vb都起不来了。
一开始弄7弄8没弄好,用vxboxmanage.exe的clonehd参数也没搞定,反正搞了1个小时没搞定。上网搜索了半天,都是叫你如何还原到设定快照的,并不是恢复已存在的快照vdi。
好吧,刚好有3.2.10的新版本vb下,先装了再说,装好了之后,先删除原来的虚拟电脑,然后新建一个虚拟电脑,使用原有的vdi文件。这个vdi文件可以在虚拟介质管理器里面注册。这个时候,已经可以使用这个虚拟机了,现在的问题是,这个虚拟机的状态是2010年6月22日的,一直到昨天,我们中途加了很多东西。我们要恢复的是2010年6月22日建立的备份+到今天的快照。这个才是真正的服务器状态。


恢复步骤:
先把原来备份的快照(以下简称快照A),注册到对应的虚拟介质下(我是2个虚拟介质,因为后期又分了50G给虚拟机),注册之后的快照A在状态提示是“无分配”。然后新建一个快照(以下简称快照B),这个时候,就会在虚拟介质管理下,每个镜像vdi文件 有2个快照vdi文件,一个是快照A(状态提示无分配),一个是快照B(状态提示已经分配给对应的虚拟机)。关闭VB,打开C盘的用户(我的系统是2008),然后找到那个".VirtualBox"文件夹,注意前面有个点。然后打开VirtualBox.xml,把快照B的vdi文件名都替换为快照A的vdi文件名(这步可做可不做,因为注册之后的vdi文件,都在这个文件夹里面,不过,我在vb群里面交流的时候,有朋友试过要修改这个东西。。至少我没修改就OK了。。),然后,打开这个目录下的Machines,里面有个你的虚拟电脑的文件夹,点进去,打开和你虚拟电脑名称一致的XML文件。也是把快照B的vdi文件名都替换为快照A的vdi文件名。
特别需要强调的是:快照的文件名必须和快照的UUID一致,我备份快照的时候,修改了文件名。所以,搞了很久都没成功。如何知道这个快照的UUID名称呢?你在虚拟介质管理器里面,注册这个快照,然后在.virtualbox文件夹里面的virtualbox.xml文件里面,搜索你的文件名,就能看到对应的uuid值。
然后,启动vb,先去虚拟介质管理器,看看,原来备份的快照文件的状态是不是已经分配给对应的虚拟机。如果是,恭喜你,OK了。就检查下是哪里没弄好。
这样做的好处是可以通过任意备份的快照文件,恢复到当时的情况。不过,有个缺点,我这样弄之后,在虚拟介质里面,这个虚拟机对应的虚拟介质对应的快照只有一个文件了。看不到第二个文件,但是,你仔细观察快照的文件夹,原来备份的快照A是不会被修改的,新修改的内容都累积在快照B上。也就是存在了2个快照的vdi文件,其中一个是不会变的,另外一个是一直在变的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值