Linux

為什麼 ZFS 快照報告零大小?

  • May 25, 2020

我有一個帶有 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-pool0 報告為輸出中這些快照USEDUSEDSNAP輸出欄位的大小。

為什麼這兩個快照的大小都報告為 0?如果我理解正確,ZFS 文件系統中的快照是增量的,所以我假設後一個快照應該報告我複製到 samba 共享的數據量的大小。

僅當您更改或刪除在拍攝快照時數據集中存在的文件時,快照才會增加大小。

ZFS 正在使用寫時複製快照,這意味著如果數據塊即將被更改,則包含更改的塊的新副本將被寫入儲存池中的不同位置以及相關數據集中的引用/卷已更新。

如果快照時數據集使用的塊都沒有被修改,則快照的大小為零,因此快照僅在元數據中與數據集的目前版本不同。

引用自:https://serverfault.com/questions/1018501