我有一个带有 zfs 池的 Centos7 系统,我用sudo zfs snapshot -r data-pool/Samba@backup_r
. 拍摄快照后,我将几 GB 的文件从我的 Windows pc 复制到该池(它被映射为 samba 共享)。复制后,我用sudo zfs snapshot -r data-pool/Samba@backup_r2
.
我很惊讶将zfs list -o space -r data-pool
0 报告为输出中这些快照USED
和USEDSNAP
输出字段的大小。
为什么这两个快照的大小都报告为 0?如果我理解正确,ZFS 文件系统中的快照是增量的,所以我假设后一个快照应该报告我复制到 samba 共享的数据量的大小。
仅当您更改或删除在拍摄快照时数据集中存在的文件时,快照才会增加大小。
ZFS 正在使用写时复制快照,这意味着如果数据块即将被更改,则包含更改的块的新副本将被写入存储池中的不同位置以及相关数据集中的引用/卷已更新。
如果快照时数据集使用的块都没有被修改,则快照的大小为零,因此快照仅在元数据中与数据集的当前版本不同。