Chinaunix首页 | 论坛 | 博客
  • 博客访问: 317595
  • 博文数量: 122
  • 博客积分: 1395
  • 博客等级: 中尉
  • 技术积分: 1340
  • 用 户 组: 普通用户
  • 注册时间: 2009-10-03 20:40
个人简介

智者,既能奋发不休,又能尽人事,顺天命

文章分类

全部博文(122)

文章存档

2014年(39)

2013年(46)

2012年(12)

2011年(3)

2010年(20)

2009年(2)

我的朋友

分类: LINUX

2013-02-28 12:12:59

在LVM中,可针对某一个LV创建某一时刻的快照卷,快照卷创建时会复制源卷的元数据。

当源卷某个block被修改时,在修改前会将这个block复制到到快照卷。

例如一个文本文件1.txt占用了编号为1000的block,如果修改1.txt的内容,则修改前这个block会被复制到快照卷。

需要注意的是,在源卷中未被使用的block被写进内容,依然会做复制。例如编号为2000的block未被使用,也就是说块位图中的值为0。此时源卷新建一个文件,占用了这个block,那么这个block依然会被复制到快照卷。

这么一来,快照卷就意味着是源卷某一个时刻的精确副本,哪怕未被使用的block都要保存下来。


个人感觉没什么必要,当从快照恢复时,把被修改的数据复制回来,那些原来未被使用,建立快照后在源卷中才被使用的block,在块位图中置0就OK了。也就是说,把快照卷当初复制的元数据覆盖回来。

如果快照卷不复制原来未使用的block,性能应该会有所提高,但也许不够安全,因为恢复后,源卷并不是百分百回到建立快照时的状态,之后写入的数据依然存在,只不过被标识为未使用的block而已。

阅读(1065) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~