LVM系统快照为何能直接在快照上写数据而不会对原系统产生影响?


鸟哥书中有张图介绍了LVM的原理(原本的LV为vbirdlv,快照LV为vbirdss):
snapshot.gif

对于此图我的理解是:
快照区=vbirdss+vbirdlv中未变动的PE
所以我认为实际上LVM系统快照还是要依赖真实的系统文件的

但鸟哥又说可以直接在vbirdss上胡作非为,到时候把快照vbirdss删掉就行了:

我们将原本的 vbirdlv 当作备份数据,然后将 vbirdss
当作实际在运作中的数据,任何测试的动作都在vbirdss这个快照区当中测试,那么当测试完毕要将测试的数据删除时,只要将快照区删除即可,然后复制一个vbirdlv的系统,再做另一个快照区即可。

我猜:
由于在快照上的操作不能影响到真实系统,所以对快照区的更改只能限于图中左边的vbirdss中,也就是说,如果vbirdss容量为100MB,那么更改的数据量就不能超过这个100MB,对吗?

lvm

法律意识恶劣的 12 years ago

打个比方啊,不一定准确,有点像PhotoShop里面图层的概念,真实系统文件就像是最底层图层,快照就相当于上面的图层,在上面图层上修过,不影响下面图层的内容。即,如果上层图层(快照)有修改,那么以此为准,如果没有修过,,就以最底层图层(真实系统文件)为准了。

海马濑人  answered 12 years ago

Your Answer