linux中lvm的快照功能问题.
既然说LVM快照是通过把文件系统的改变记录到一个快照分区,而不是对这个分区做镜像。且对快照区的任何操作不会影响源分区。
那么问题:1:我们在快照分区中修改一个已存在的文件时,系统是不是先把这个文件拷贝到快照区,然后进行修改?
2:我们在快照分区中删除一个文件时,只是删除保存在快照区的节点信息?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
under LVM2, once the file in the snapshot has been modified, an entry to that effect is made in the exception table, and when the (modified, in-snapshot) file is accessed, the blocks read are the modified snapshot blocks, not those from the original volume ("block ... never gets copied from the original volume")
LVM-HOWTO
感谢MadHatter
以下回答为本人猜测
注意看图,我觉得最关键的注意点就是
快照区与原本的LV共用A~I
,也就是说A~I只有一份
,而非快照区一份+原LV一份=2份互相独立的区块
这种情况.正常情况下,快照区是用来记录原本LV区域中改动内容的作用存在的,这点看图就能明白.
但有一种特殊情况是鸟哥487页说的用快照区当作测试区,这种情况下用户主动掌控的快照区只有最左面3个空白块,也就是说用户往快照区写的东西只会限定在左侧3块空白处,鸟哥没说要是写入的改动内容大小超过3个空白区块的容量会怎样,我个人估计要是内容超过这个量就会失效
好吧以上内容很难说清楚,鸟哥自己也没讲清,不过我觉得我的理解应该没有漏洞,我都是依据
A~I的PE为共用区域
这句话推断出来的