再也不怕随便修改配置文件了

Snapshots:系统快照,保存虚拟系统在某一时刻的全部运行状态,以后可以将虚拟系统恢复到创建此快照时的状态。在VirtualBox中文版中,snapshots被翻译成“备份”。

 

使用虚拟机最方便的一点是可以随时备份系统状态(创建快照),然后就可以放心地折腾了,即使把虚拟系统搞坏了也可以随时恢复到备份时的状态,甚至是正在运行中的状态,比“一键还原”还方便。

 

不过VirtualBox以往的版本与VMware等其他虚拟机软件相比有一个不足之处,就是它只能恢复到最近一个备份的状态,如果要恢复到更久以前的备份,得先删除最近的备份才行。而前几天刚刚发布的VirtualBox 3.1版,增加了分支快照(branched snapshots)功能,可以将虚拟系统直接恢复到任意时间的备份,并且保留最近的备份,当修改了过去备份的状态后,可以在原有的备份时间线上创建一个分支,并且可以随时在不同分支上继续运行系统。

 

对于没有用过这个功能的人,可能用具体的例子来说明会更容易理解一些。

下面是我刚在虚拟机中装好的一个系统,我创建了一个备份,命名为“新装系统”。 


当我在这个系统中进行了一些操作之后,当前状态相对于“新装系统”的状态已经改变了,我可以基于这个状态再创建一个备份,命名为“备份1”。


 

我可以根据需要继续在不同的时间点创建备份,如“备份2”、“备份3”、“备份4”。到目前为止,操作和VirtualBox以前的版本是一样的,在以前的版本中,我只可以恢复到最近一个备份——“备份4”,不能直接恢复到更早的备份。


 

而在3.1以后的版本中,可以直接恢复到“备份1”,或者任何一个备份,而不会对其他已经创建的备份产生影响。


 

这个时候,虚拟系统的当前状态就是基于“备份1”的了,在备份时间线上产生了一个分支。


 

在这个分支上,可以再创建新的备份,如“备份a”、“备份b”、“备份c”。


 

现在,虚拟系统的当前状态是基于“备份c”的,不过可以随时切换到另一个分支,比如恢复到“备份4”的状态。


 

根据同样的操作,可以恢复到任意时刻的备份继续运行,并创建新的分支。


 

分支快照功能的好处是,我们可以在一个虚拟系统中保存不同的状态,比如一个用于工作,一个用于娱乐,一个用于测试软件等等。可以随时在这些不同的状态中切换,而不用创建多个虚拟系统了。

 

当然,虽然备份状态可以有很多,但是当前状态只能有一个,也就是说,这些不同的状态是不能同时运行的。如果需要同时运行多个不同的环境,就得创建多个虚拟系统了,可以参考我之前的文章《在VirtualBox里复制VDI文件》。

 

 

 《在VirtualBox里复制VDI文件

 在VirtualBox的快速修复界面里,可以随时生成当前状态的备份。当生成了备份之后,会在Snapshots目录下创建一个新的VDI文件,之后对当前状态所做的一切操作都将针对最新的VDI文件,而VDI目录下的初始VDI文件就不会再改变了。


 

我一般在装好Guest OS并做完打补丁、安装常用软件等操作后就创建一个备份,如果Guest OS发生了问题可以随时恢复到干净的系统。但是有时需要在不同的软件环境下做不同的事情,开始时我希望能用一个VDI文件生成两个不同的备份并分别配置成不同的环境,但是发现VirtualBox的备份是线性的,也就是说只能针对当前状态做一个备份,而恢复备份时也只能恢复到上一个备份的状态,不能同时存在两个不同的当前状态。

 

没有办法,只能把初始的VDI文件复制出来一份用于另外的环境。但是很快发现,复制出来的VDI文件无法在虚拟介质管理器中注册,因为每个VDI文件都有一个唯一的uuid,而VirtualBox不允许注册重复的uuid。

 

看了帮助文件后,发现VBoxManage有一个clonevdi方法可以克隆VDI文件,并赋予它一个新的uuid。具体用法是在命令行里执行:

VBoxManage clonevdi 原始VDI文件名 新的VDI文件名

直接写VDI文件名即可,不用指明VDI文件所在路径,新的文件会在全局设定中指定的VDI目录下创建。如果VDI文件名里带有空格,应该在两端加上双引号。VBoxManage命令位于VirtualBox安装目录下,缺省路径是C:\Program Files\Sun\xVM VirtualBox。

 

用这个方法创建了新的VDI文件后,就可以正常注册并在另一个虚拟机中使用了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CSDN再也不怕缓存雪崩的原因有很多,以下是一些主要的原因: 首先,CSDN采取了合适的缓存策略来避免雪崩问题的发生。他们将缓存设置为分布式模式,采用多层次结构来应对高流量的情况。这种分层结构将请求分散到不同的缓存服务器上,减轻了单个缓存服务器的负荷,并且可以有效地应对高并发请求。 其次,CSDN还使用了缓存预热技术。在高峰期之前,他们提前通过一些特定的手段将热门数据加载到缓存中,使得用户请求能够直接从缓存中获取数据,减少了对后端数据库的访问压力。这种预热技术可以有效地减少缓存的命中率,提高系统的响应速度。 此外,CSDN还采用了数据分片技术。他们将数据分散存储在不同的缓存服务器上,而不是集中存储在一个缓存服务器上。这样做的好处是,即使某个缓存服务器发生故障或者出现负载过高的情况,它只会影响到部分数据,而不会导致整个系统崩溃。同时,通过使用一致性哈希等算法,可以有效地解决缓存数据分布不均匀的问题。 最后,CSDN还进行了系统监控和故障预警。他们通过实时监控系统的运行状态和性能指标,一旦发现异常情况,就能够及时采取相应的措施进行处理。这种及时的监控和预警能够大大减少由于缓存雪崩引起的系统故障,并保证用户的正常访问。 综上所述,CSDN采取了一系列科学的缓存策略和技术手段来应对缓存雪崩问题的发生,从而保证了系统的稳定性和高可用性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值